mirror of
https://github.com/nginx/nginx.git
synced 2025-01-09 03:00:17 +08:00
cb8a0327ab
The ngx_init_setproctitle() function, as used on systems without setproctitle(3), may fail due to memory allocation errors, and therefore its return code needs to be checked. Reported by Markus Linnala.
53 lines
990 B
C
53 lines
990 B
C
|
|
/*
|
|
* Copyright (C) Igor Sysoev
|
|
* Copyright (C) Nginx, Inc.
|
|
*/
|
|
|
|
|
|
#ifndef _NGX_SETPROCTITLE_H_INCLUDED_
|
|
#define _NGX_SETPROCTITLE_H_INCLUDED_
|
|
|
|
|
|
#if (NGX_HAVE_SETPROCTITLE)
|
|
|
|
/* FreeBSD, NetBSD, OpenBSD */
|
|
|
|
#define ngx_init_setproctitle(log) NGX_OK
|
|
#define ngx_setproctitle(title) setproctitle("%s", title)
|
|
|
|
|
|
#else /* !NGX_HAVE_SETPROCTITLE */
|
|
|
|
#if !defined NGX_SETPROCTITLE_USES_ENV
|
|
|
|
#if (NGX_SOLARIS)
|
|
|
|
#define NGX_SETPROCTITLE_USES_ENV 1
|
|
#define NGX_SETPROCTITLE_PAD ' '
|
|
|
|
ngx_int_t ngx_init_setproctitle(ngx_log_t *log);
|
|
void ngx_setproctitle(char *title);
|
|
|
|
#elif (NGX_LINUX) || (NGX_DARWIN)
|
|
|
|
#define NGX_SETPROCTITLE_USES_ENV 1
|
|
#define NGX_SETPROCTITLE_PAD '\0'
|
|
|
|
ngx_int_t ngx_init_setproctitle(ngx_log_t *log);
|
|
void ngx_setproctitle(char *title);
|
|
|
|
#else
|
|
|
|
#define ngx_init_setproctitle(log) NGX_OK
|
|
#define ngx_setproctitle(title)
|
|
|
|
#endif /* OSes */
|
|
|
|
#endif /* NGX_SETPROCTITLE_USES_ENV */
|
|
|
|
#endif /* NGX_HAVE_SETPROCTITLE */
|
|
|
|
|
|
#endif /* _NGX_SETPROCTITLE_H_INCLUDED_ */
|