Re: [HACKERS] GSSAPI on Solaris - psql segfault

2007-07-14 Thread Stefan Kaltenbrunner
Zdenek Kotala wrote:
 Stefan Kaltenbrunner wrote:
 I just took a look at adding gssapi build support on solaris (solaris
 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by
 educating configure to look for -lgss but while it compiles just fine
 the resulting tree will not be able to complete a make check due to
 psql(!) segfaulting as soon as it tries to connect to the backend.
 the backtrace looks similiar to:


 program terminated by signal SEGV (no mapping at the fault address)
 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi)
 Current function is pqPutMsgBytes
   475   memcpy(conn-outBuffer + conn-outMsgEnd, buf, len);
 (dbx) where
   [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000,
 0x7361626174616400), at 0x7fd3d401
 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line
 475 in fe-misc.c
   [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189
 in fe-misc.c
   [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0,
 buf_len = 103U), line 2439 in fe-connect.c
   [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c
   [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c
   [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil),
 pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil),
 pwd = (nil)), line 660 in fe-connect.c
   [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c


 ideas ?
 
 Do you use also 64bit psql? Can you send me your ./configure setup?
 However, I see there potential integer overflow, because len is size_t
 and  conn-outMsgEnd is defined as int.

yeah this is a full 64bit build - but I just did several fresh buildfarm
cycles and I'm unable to reproduce the issue again ...


Stefan

---(end of broadcast)---
TIP 5: don't forget to increase your free space map settings


[HACKERS] GSSAPI on Solaris - psql segfault

2007-07-13 Thread Stefan Kaltenbrunner
I just took a look at adding gssapi build support on solaris (solaris
10/x86_64, sun studio 10, 64bit build) which seemed easy enough by
educating configure to look for -lgss but while it compiles just fine
the resulting tree will not be able to complete a make check due to
psql(!) segfaulting as soon as it tries to connect to the backend.

the backtrace looks similiar to:


program terminated by signal SEGV (no mapping at the fault address)
0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi)
Current function is pqPutMsgBytes
  475   memcpy(conn-outBuffer + conn-outMsgEnd, buf, len);
(dbx) where
  [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000,
0x7361626174616400), at 0x7fd3d401
=[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line
475 in fe-misc.c
  [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189
in fe-misc.c
  [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0,
buf_len = 103U), line 2439 in fe-connect.c
  [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c
  [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c
  [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil),
pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil),
pwd = (nil)), line 660 in fe-connect.c
  [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c


ideas ?


Stefan

---(end of broadcast)---
TIP 7: You can help support the PostgreSQL project by donating at

http://www.postgresql.org/about/donate


Re: [HACKERS] GSSAPI on Solaris - psql segfault

2007-07-13 Thread Bruce Momjian
Stefan Kaltenbrunner wrote:
 I just took a look at adding gssapi build support on solaris (solaris
 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by
 educating configure to look for -lgss but while it compiles just fine
 the resulting tree will not be able to complete a make check due to
 psql(!) segfaulting as soon as it tries to connect to the backend.

Can we add the segfault to the Solaris expected regression results?  ;-)

---


 
 the backtrace looks similiar to:
 
 
 program terminated by signal SEGV (no mapping at the fault address)
 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi)
 Current function is pqPutMsgBytes
   475   memcpy(conn-outBuffer + conn-outMsgEnd, buf, len);
 (dbx) where
   [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000,
 0x7361626174616400), at 0x7fd3d401
 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line
 475 in fe-misc.c
   [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189
 in fe-misc.c
   [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0,
 buf_len = 103U), line 2439 in fe-connect.c
   [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c
   [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c
   [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil),
 pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil),
 pwd = (nil)), line 660 in fe-connect.c
   [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c
 
 
 ideas ?
 
 
 Stefan
 
 ---(end of broadcast)---
 TIP 7: You can help support the PostgreSQL project by donating at
 
 http://www.postgresql.org/about/donate

-- 
  Bruce Momjian  [EMAIL PROTECTED]  http://momjian.us
  EnterpriseDB   http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster


Re: [HACKERS] GSSAPI on Solaris - psql segfault

2007-07-13 Thread Zdenek Kotala

Stefan Kaltenbrunner wrote:

I just took a look at adding gssapi build support on solaris (solaris
10/x86_64, sun studio 10, 64bit build) which seemed easy enough by
educating configure to look for -lgss but while it compiles just fine
the resulting tree will not be able to complete a make check due to
psql(!) segfaulting as soon as it tries to connect to the backend.
the backtrace looks similiar to:


program terminated by signal SEGV (no mapping at the fault address)
0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi)
Current function is pqPutMsgBytes
  475   memcpy(conn-outBuffer + conn-outMsgEnd, buf, len);
(dbx) where
  [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000,
0x7361626174616400), at 0x7fd3d401
=[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line
475 in fe-misc.c
  [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189
in fe-misc.c
  [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0,
buf_len = 103U), line 2439 in fe-connect.c
  [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c
  [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c
  [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil),
pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil),
pwd = (nil)), line 660 in fe-connect.c
  [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c


ideas ?


Do you use also 64bit psql? Can you send me your ./configure setup? 
However, I see there potential integer overflow, because len is size_t 
and  conn-outMsgEnd is defined as int.


 Zdenek

---(end of broadcast)---
TIP 7: You can help support the PostgreSQL project by donating at

   http://www.postgresql.org/about/donate