the difference between a smock and a jacket is one of construction - if it has a full length opening at the front its not a smock, if it goes over your head its a smock.
either design can have any function you like, be made out of any material you like, and be any colour you like.
of course, being the custodians of the English language we Brits get to change the rules - while the above generally holds, there's a derivation: the military windproof jacket is also called a 'smock'. thats because of its lineage, the original windproof smock was a, err... smock, the zip went down to the bottom of the sternum, but this was replaced in the early 60's by a jacket with the four front pockets, but because its function was the same as the windproof smock, it was just called the same thing - the windproof smock. 60 years later, the windproof smock is still a jacket, but its called a smock.
hope that clears it up for you....