A Melbourne man who was punched in the face by a police officer has been awarded almost $130,000 in damages after a judge found his rights had been violated by the "insulting" attack.

Tim Vivoda was punched while in custody at the Ringwood police station in April 2008 after being found drunk in a public place.

He had been drinking at a friend's house when he wandered outside, fell over and injured himself, before being taken by police.

The officer who punched him, Senior Constable David Kealy, said he acted in self-defence, believing Mr Vivoda had been lunging to grab his pistol and knowing he had a previous conviction for assaulting police.

But the pistol was not in his holster at the time.