Px_ipc_name()函数
来源:互联网 发布:手机mp3变速软件 编辑:程序博客网 时间:2024/05/01 00:12
/* include px_ipc_name */#include "unpipc.h"char *px_ipc_name(const char *name){ char *dir, *dst, *slash; //分配的空间在哪里释放的哦!@deprecated 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; // gcc -posix -E -dM - </dev/null >#ifdef linux ptr = (char *)name;#else if ( (ptr = px_ipc_name(name)) == NULL) err_sys("px_ipc_name error for %s", name);#endif return(ptr);}