From: Marc G. Fournier Date: Fri, 12 May 2000 14:33:08 +0000 (+0000) Subject: this fixes the bug where setting the entry in he process table no longer works X-Git-Tag: REL7_0_2~111 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=be4ae8f4b22e92f517122bbc1b16142009241d49;p=postgresql this fixes the bug where setting the entry in he process table no longer works under FreeBSD ... basically, if setproctitle() exists, use it ... the draw back right now is the PS_SET_STATUS stuff doesn't work, but am looking into that one right now ... at lesat now you can see who is connecting where and from where ... --- diff --git a/src/include/utils/ps_status.h b/src/include/utils/ps_status.h index 8bc28e5d63..b786c5415a 100644 --- a/src/include/utils/ps_status.h +++ b/src/include/utils/ps_status.h @@ -11,7 +11,27 @@ #ifndef PS_STATUS_H #define PS_STATUS_H -#ifdef linux +#ifdef HAVE_SETPROCTITLE + +extern char Ps_status_buffer[]; + +#undef PS_DEFINE_BUFFER + +#define PS_INIT_STATUS(argc, argv, execname, username, hostname, dbname) \ + do { \ + Assert(argc >= 5); \ + setproctitle("%s %s %s %s %s", execname, hostname, username, dbname, Ps_status_buffer); \ + } while (0) + +#define PS_CLEAR_STATUS() \ + do { Ps_status_buffer[0] = '\0'; } while (0) + +#define PS_SET_STATUS(status) \ + do { strcpy(Ps_status_buffer, (status)); } while (0) + +#define PS_STATUS (Ps_status_buffer) + +#elif defined(linux) #include