It's called the 2nd Amendment. You don't need a law to allow you to open carry. The 2nd already covers that.
The second amendment allows individuals to OWN guns, although many states restric this right as well. States dictate the manner in which they can be carried out in public.
Open Carry is not permitted in MANY states.
The categories are defined as follows:
Permissive Open Carry States - A state has passed full preemption of all firearms laws. They permit open carry to all non-prohibited citizens without permit or license. Also open carry is lawful on foot and in a motor vehicle.
Licensed Open Carry States - A state has passed full preemption of all firearms laws. They also permit open carry to all non-prohibited citizens once they have been issued a permit or license. Also open carry is lawful on foot and in a motor vehicle.
Anomalous Open Carry States - In these states, open carry is generally lawful, but the state may lack preemption or there may be other significant restrictions.
Non-Permissive Open Carry States - In these states, open carry is not lawful, or is only lawful under a limited set of circumstances, such as when hunting, or while traveling to/from hunting locations, while on property controlled by the person carrying, or for lawful self-defense.
Seven states and the District of Columbia fully prohibit the open carry of firearms. Additionally, there are ELEVEN states which permit open carry without requiring the citizen to apply for any permit or license. (And those are the ONLY states I will live in)