Hudson agreed to terms on a two-year, $23 million deal with the Giants.