px_ipc_name.c

来自「《UNIX进程间通信》中的代码」· C语言 代码 · 共 37 行

C
37
字号
/* include px_ipc_name */#include	"unpipc.h"char *px_ipc_name(const char *name){	char	*dir, *dst, *slash;	if ( (dst = malloc(PATH_MAX)) == NULL)		return(NULL);		/* 4can override default directory with environment variable */	if ( (dir = getenv("PX_IPC_NAME")) == NULL) {#ifdef	POSIX_IPC_PREFIX		dir = POSIX_IPC_PREFIX;		/* from "config.h" */#else		dir = "/tmp/";				/* default */#endif	}		/* 4dir must end in a slash */	slash = (dir[strlen(dir) - 1] == '/') ? "" : "/";	snprintf(dst, PATH_MAX, "%s%s%s", dir, slash, name);	return(dst);			/* caller can free() this pointer */}/* end px_ipc_name */char *Px_ipc_name(const char *name){	char	*ptr;	if ( (ptr = px_ipc_name(name)) == NULL)		err_sys("px_ipc_name error for %s", name);	return(ptr);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?