It worked! Thx a million!
Is it me, or is the documentation for CGI::Session severely misleading? It clearly says:
new( DSN, SID, HASHREF )
Requires three arguments. First is the Data Source Name, second should be the session id to be initialized or an object which provides either of 'param()' or 'cookie()' mehods. If Data Source Name is undef, it will fall back to default values, which are "driver:File;serializer:Default;id:MD5".
If session id is missing, ***it will force the library to generate a new session id***, which will be accessible through id() method.
But obviously, it doesn't.