Bug 279909 - postgresql16-server GSSAPI dumps core
Summary: postgresql16-server GSSAPI dumps core
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: pgsql
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-06-22 13:43 UTC by SA
Modified: 2024-06-22 13:43 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (pgsql)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SA 2024-06-22 13:43:38 UTC
When compiling postgresql16-server with MIT krb5 clients cannot connect as postgres server crashes.


root@freebsd:/usr/ports/databases/postgresql16-server # pkg info -b krb5
krb5-1.21.2_3:
	libverto.so.0.0
	libkrb5support.so.0.1
	libkrb5.so.3.3
	libkrad.so.0.0
	libkdb5.so.10.0
	libkadm5srv_mit.so.12.0
	libkadm5clnt_mit.so.12.0
	libk5crypto.so.3.1
	libgssrpc.so.4.2
	libgssapi_krb5.so.2.2
	libcom_err.so.3.0

root@freebsd:/usr/ports/databases/postgresql16-server # make showconfig
===> The following configuration options are available for postgresql16-server-16.3:
     DEBUG=on: Build with debugging support
     DOCS=on: Build and/or install documentation
     DTRACE=off: Build with DTrace probes
     GSSAPI=on: Build with GSSAPI support
     LDAP=off: Build with LDAP authentication support
     LLVM=on: Build with support for JIT-compiling expressions
     LZ4=on: Build with LZ4 compression support
     NLS=on: Use internationalized messages
     OPTIMIZED_CFLAGS=off: Builds with compiler optimizations (-O3)
     PAM=on: Build with PAM Support
     SSL=on: Build with OpenSSL support
     TZDATA=off: Use internal timezone database
     XML=on: Build with XML data type
     ZSTD=on: Build with ZSTD compression support

client$ psql -U user -h freebsd.example.com ...
psql16: error: connection to server at "freebsd.example.com" (192.168.101.149), port 5432 failed: connection to server at "freebsd.example.com" (192.168.101.149), port 5432 failed: server closed the connection unexpectedly
	This probably means the server terminated abnormally
	before or while processing the request.


Postgresql log:

024-06-22 11:48:58.436 BST [4056] LOG:  server process (PID 5216) was terminated by signal 11: Segmentation fault
2024-06-22 11:48:58.436 BST [4056] LOG:  terminating any other active server processes
2024-06-22 11:48:58.440 BST [4056] LOG:  all server processes terminated; reinitializing
2024-06-22 11:48:58.448 BST [5218] LOG:  database system was interrupted; last known up at 2024-06-22 11:48:25 BST
2024-06-22 11:48:58.476 BST [5218] LOG:  database system was not properly shut down; automatic recovery in progress
2024-06-22 11:48:58.480 BST [5218] LOG:  redo starts at 0/B000488

root@freebsd:/pg/data # gdb /usr/local/bin/postgres postgres.core
GNU gdb (GDB) 14.1 [GDB v14.1 for FreeBSD]
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-portbld-freebsd14.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/bin/postgres...
(No debugging symbols found in /usr/local/bin/postgres)
[New LWP 100530]
Core was generated by `/usr/local/bin/postgres -D /pg/data'.
Program terminated with signal SIGSEGV, Segmentation fault.
Address not mapped to object.
#0  0x000000082cdf6f46 in ?? () from /usr/local/lib/libkrb5.so.3.3
(gdb) where
#0  0x000000082cdf6f46 in ?? () from /usr/local/lib/libkrb5.so.3.3
#1  0x000000082cdc8b7a in ?? () from /usr/local/lib/libkrb5.so.3.3
#2  0x000000082cdc812d in krb5_kt_get_entry () from /usr/local/lib/libkrb5.so.3.3
#3  0x000000083d1d78b5 in ?? () from /usr/lib/libkrb5.so.11
#4  0x000000083d1d7475 in krb5_rd_req_ctx () from /usr/lib/libkrb5.so.11
#5  0x000000083ce181de in _gsskrb5_accept_sec_context () from /usr/lib/libgssapi_krb5.so.10
#6  0x00000008220d2acb in gss_accept_sec_context () from /usr/lib/libgssapi.so.10
#7  0x0000000000750847 in secure_open_gssapi ()
#8  0x000000000082c99f in ?? ()
#9  0x000000000082c06c in ?? ()
#10 0x000000000082aae9 in ?? ()
#11 0x00000000008280b5 in PostmasterMain ()
#12 0x000000000075103f in main ()
(gdb)