Non cosmetic but needs to last...

A big variable is preparation. If you can sand, wire wheel or blast to clean metal, I would suggest epoxy primer and acrylic enamel. The primer will usually harden enough to re-coat in an hour or so and the acrylic enamel will be dust free in a half hour. See below examples.

If prep is less complete, you can use a rust stop primer like red Rustoleum or Eastwood rust encapsulator followed by either acrylic enamel mentioned below or Rustoleum spray bomb.

http://www.tcpglobal.com/KUS-KEP505-GL_2.html?sc=115&category=11322441#.WqCKtWrwbIU

https://www.eastwood.com/paints/automotive-finishes/primers/epoxy.html

http://www.tcpglobal.com/Automotive-Paint/Restoration-Shop-1903/

https://www.eastwood.com/eastwood-black-ice-gold-pearl-3-1-single-stage-paint.html