That's not entirely accurate, LB. While on active duty, you can voluteer to work in a political campaign, you can speak, and you can, of course, vote. However, you must do so on your own time, you must do it in civilian clothes, and you must give no indication whatsoever that you are representing the military.
It is always against regulation for a member of the military to speak contemptuously of the Commander in Chief.
Like Marlowe says, though, they'll never stop troops from complaining about the brass. It's a given. Therefore, speaking contemptuously, in my humble opinion, does not include griping about perceived lousy decisions.
I'm guessing there is a legal definition of "contemptuous" that is used by the military. There would have to be in order to charge someone for violating in such a manner.
I just don't know what it is.