Portsmouth have signed defender Greg Halford from Wolves on a three-year deal for an undisclosed fee.
The 26-year-old spent an extended loan spell at Fratton Park last season, making 33 appearances for the Championship side.
The former Colchester academy product left Layer Road in 2007, initially for Reading and then Sunderland.
Halford then moved to Molineux in 2009 for £2m, but only managed to make 17 Premier League appearances.
Pompey chief executive David Lampitt said: "Greg is a quality, versatile, young player who proved his worth for us on loan last season as part of a defence that kept six straight clean sheets during February and March.
"We're very pleased he has now signed a permanent deal with us and are very much looking for him to push on and build on his progress last season."
Halford, who said he wanted to join the south coast club after returning to Wolves in May, spent much of his time as a centre-back during his loan spell at Fratton Park but has previously played as striker and midfielder.