Can't use string ("HASH(0x991f0dc)
") as a HASH ref while "strict refs" in use at tcpclient1.pl line 49, <GEN0> line 1
You can't convert this back.
HASH(0x991f0dc) is not a hash reference. It is the string representation of a variable that contains a reference to a hash at that address. The error message you describe when you deref it points to that you have something similar to this:
my $foo = 'HASH(0x991f0dc)'; print %$foo;
Now that won't work, because the actual data structure is not there.
It looks like you got this over a socket that you read from through the
GEN0 filehandle. Whoever sends you that data structure is doing something wrong.