diff --git a/lib/modules/Sql.pmod/pgsql_util.pmod b/lib/modules/Sql.pmod/pgsql_util.pmod index c3e6675681f13b2f66ae609fd22d017d5f7a55ab..da0a6d1986ba7a4f893c71d14f055fcd3a8ab3c7 100644 --- a/lib/modules/Sql.pmod/pgsql_util.pmod +++ b/lib/modules/Sql.pmod/pgsql_util.pmod @@ -506,9 +506,10 @@ outer: PD("SSLRequest\n"); start()->add_int32(8)->add_int32(PG_PROTOCOL(1234,5679)) ->sendcmd(SENDOUT); - switch(read_int8()) { + string s = socket.read(1); + switch (sizeof(s) && s[0]) { case 'S': - object fcon=SSL.File(socket,SSL.Context()); + SSL.File fcon = SSL.File(socket, SSL.Context()); if(fcon->connect()) { socket=fcon; break;