in reply to Comparing current password with one generated through Crypt::PasswdMD5

What are you using for $salt? MD5 passwords seem to use a much longer salt than traditional crypt() passwords.
> perl -e 'print crypt("foobaz", q[$1$1234567890$]), "\n"' $1$12345678$ykZ52jdThSTvvsWlFFrxg0
Update: It's probably better to let crypt extract the salt rather than trying to do it yourself. Just use
crypt($current, $info[1])