Commit c3f43e83 authored by Ulrich Sibiller's avatar Ulrich Sibiller Committed by Mike Gabriel

replace PRMSG by prmsg

parent c4b775f6
...@@ -306,6 +306,9 @@ typedef struct _Xtransport_table { ...@@ -306,6 +306,9 @@ typedef struct _Xtransport_table {
/* Flags to preserve when setting others */ /* Flags to preserve when setting others */
#define TRANS_KEEPFLAGS (TRANS_NOUNLINK|TRANS_ABSTRACT) #define TRANS_KEEPFLAGS (TRANS_NOUNLINK|TRANS_ABSTRACT)
#ifdef XTRANS_TRANSPORT_C /* only provide static function prototypes when
building the transport.c file that has them in */
/* /*
* readv() and writev() don't exist or don't work correctly on some * readv() and writev() don't exist or don't work correctly on some
* systems, so they may be emulated. * systems, so they may be emulated.
...@@ -360,54 +363,62 @@ static int trans_mkdir ( ...@@ -360,54 +363,62 @@ static int trans_mkdir (
* Some XTRANSDEBUG stuff * Some XTRANSDEBUG stuff
*/ */
#if defined(XTRANSDEBUG) #ifdef XTRANSDEBUG
/* add hack to the format string to avoid warnings about extra arguments #include <stdarg.h>
* to fprintf.
/*
* The X server provides ErrorF() & VErrorF(), for other software that uses
* xtrans, we provide our own simple versions.
*/ */
#ifdef XTRANSDEBUGTIMESTAMP # if defined(XSERV_t) && defined(TRANS_SERVER)
#if defined(XSERV_t) && defined(TRANS_SERVER) # include "os.h"
/* Use ErrorF() for the X server */ # else
#define PRMSG(lvl,x,a,b,c) if (lvl <= XTRANSDEBUG){ \ static inline void _X_ATTRIBUTE_PRINTF(1, 0)
int hack= 0, saveerrno=errno; \ VErrorF(const char *f, va_list args)
struct timeval tp;\ {
gettimeofday(&tp,0); \ vfprintf(stderr, f, args);
ErrorF("%s",__xtransname); \ fflush(stderr);
ErrorF(x+hack,a,b,c); \ }
ErrorF("timestamp (ms): %d\n",tp.tv_sec*1000+tp.tv_usec/1000); \
errno=saveerrno; \ static inline void _X_ATTRIBUTE_PRINTF(1, 2)
} else ((void)0) ErrorF(const char *f, ...)
#else {
#define PRMSG(lvl,x,a,b,c) if (lvl <= XTRANSDEBUG){ \ va_list args;
int hack= 0, saveerrno=errno; \
struct timeval tp;\ va_start(args, f);
gettimeofday(&tp,0); \ VErrorF(f, args);
fprintf(stderr, "%s",__xtransname); fflush(stderr); \ va_end(args);
fprintf(stderr, x+hack,a,b,c); fflush(stderr); \ }
fprintf(stderr, "timestamp (ms): %d\n",tp.tv_sec*1000+tp.tv_usec/1000); \ # endif /* xserver */
fflush(stderr); \ #endif /* XTRANSDEBUG */
errno=saveerrno; \
} else ((void)0) static inline void _X_ATTRIBUTE_PRINTF(2, 3)
#endif /* XSERV_t && TRANS_SERVER */ prmsg(int lvl, const char *f, ...)
#else /* XTRANSDEBUGTIMESTAMP */ {
#if defined(XSERV_t) && defined(TRANS_SERVER) #ifdef XTRANSDEBUG
/* Use ErrorF() for the X server */ va_list args;
#define PRMSG(lvl,x,a,b,c) if (lvl <= XTRANSDEBUG){ \
int hack= 0, saveerrno=errno; \ va_start(args, f);
ErrorF("%s",__xtransname); \ if (lvl <= XTRANSDEBUG) {
ErrorF(x+hack,a,b,c); \ int saveerrno = errno;
errno=saveerrno; \
} else ((void)0) ErrorF("%s", __xtransname);
#else VErrorF(f, args);
#define PRMSG(lvl,x,a,b,c) if (lvl <= XTRANSDEBUG){ \
int hack= 0, saveerrno=errno; \ # ifdef XTRANSDEBUGTIMESTAMP
fprintf(stderr, "%s",__xtransname); fflush(stderr); \ {
fprintf(stderr, x+hack,a,b,c); fflush(stderr); \ struct timeval tp;
errno=saveerrno; \ gettimeofday(&tp, 0);
} else ((void)0) ErrorF("timestamp (ms): %d\n",
#endif /* XSERV_t && TRANS_SERVER */ tp.tv_sec * 1000 + tp.tv_usec / 1000);
#endif /* XTRANSDEBUGTIMESTAMP */ }
#else # endif
#define PRMSG(lvl,x,a,b,c) ((void)0) errno = saveerrno;
}
va_end(args);
#endif /* XTRANSDEBUG */ #endif /* XTRANSDEBUG */
}
#endif /* XTRANS_TRANSPORT_C */
#endif /* _XTRANSINT_H_ */ #endif /* _XTRANSINT_H_ */
...@@ -87,7 +87,7 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp) ...@@ -87,7 +87,7 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp)
{ {
PRMSG(2,"ConvertAddress(%d,%d,%x)\n",*familyp,*addrlenp,*addrp); prmsg(2,"ConvertAddress(%d,%d,%x)\n",*familyp,*addrlenp,*addrp);
switch( *familyp ) switch( *familyp )
{ {
...@@ -174,8 +174,8 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp) ...@@ -174,8 +174,8 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp)
#endif #endif
default: default:
PRMSG(1,"ConvertAddress: Unknown family type %d\n", prmsg(1,"ConvertAddress: Unknown family type %d\n",
*familyp, 0,0 ); *familyp);
return -1; return -1;
} }
...@@ -426,7 +426,7 @@ TRANS(WSAStartup) (void) ...@@ -426,7 +426,7 @@ TRANS(WSAStartup) (void)
{ {
static WSADATA wsadata; static WSADATA wsadata;
PRMSG (2,"WSAStartup()\n", 0, 0, 0); prmsg (2,"WSAStartup()\n");
if (!wsadata.wVersion && WSAStartup(0x0101, &wsadata)) if (!wsadata.wVersion && WSAStartup(0x0101, &wsadata))
return 1; return 1;
...@@ -474,8 +474,8 @@ trans_mkdir(char *path, int mode) ...@@ -474,8 +474,8 @@ trans_mkdir(char *path, int mode)
if (lstat(path, &buf) != 0) { if (lstat(path, &buf) != 0) {
if (errno != ENOENT) { if (errno != ENOENT) {
PRMSG(1, "mkdir: ERROR: (l)stat failed for %s (%d)\n", prmsg(1, "mkdir: ERROR: (l)stat failed for %s (%d)\n",
path, errno, 0); path, errno);
return -1; return -1;
} }
/* Dir doesn't exist. Try to create it */ /* Dir doesn't exist. Try to create it */
...@@ -488,15 +488,15 @@ trans_mkdir(char *path, int mode) ...@@ -488,15 +488,15 @@ trans_mkdir(char *path, int mode)
*/ */
if (geteuid() != 0) { if (geteuid() != 0) {
if (mode & 01000) { if (mode & 01000) {
PRMSG(1, "mkdir: ERROR: euid != 0," prmsg(1, "mkdir: ERROR: euid != 0,"
"directory %s will not be created.\n", "directory %s will not be created.\n",
path, 0, 0); path);
#ifdef FAIL_HARD #ifdef FAIL_HARD
return -1; return -1;
#endif #endif
} else { } else {
PRMSG(1, "mkdir: Cannot create %s with root ownership\n", prmsg(1, "mkdir: Cannot create %s with root ownership\n",
path, 0, 0); path);
} }
} }
#endif #endif
...@@ -504,8 +504,8 @@ trans_mkdir(char *path, int mode) ...@@ -504,8 +504,8 @@ trans_mkdir(char *path, int mode)
#ifndef WIN32 #ifndef WIN32
if (mkdir(path, mode) == 0) { if (mkdir(path, mode) == 0) {
if (chmod(path, mode)) { if (chmod(path, mode)) {
PRMSG(1, "mkdir: ERROR: Mode of %s should be set to %04o\n", prmsg(1, "mkdir: ERROR: Mode of %s should be set to %04o\n",
path, mode, 0); path, mode);
#ifdef FAIL_HARD #ifdef FAIL_HARD
return -1; return -1;
#endif #endif
...@@ -514,8 +514,8 @@ trans_mkdir(char *path, int mode) ...@@ -514,8 +514,8 @@ trans_mkdir(char *path, int mode)
if (mkdir(path) == 0) { if (mkdir(path) == 0) {
#endif #endif
} else { } else {
PRMSG(1, "mkdir: ERROR: Cannot create %s\n", prmsg(1, "mkdir: ERROR: Cannot create %s\n",
path, 0, 0); path);
return -1; return -1;
} }
...@@ -573,8 +573,8 @@ trans_mkdir(char *path, int mode) ...@@ -573,8 +573,8 @@ trans_mkdir(char *path, int mode)
struct stat fbuf; struct stat fbuf;
if ((fd = open(path, O_RDONLY)) != -1) { if ((fd = open(path, O_RDONLY)) != -1) {
if (fstat(fd, &fbuf) == -1) { if (fstat(fd, &fbuf) == -1) {
PRMSG(1, "mkdir: ERROR: fstat failed for %s (%d)\n", prmsg(1, "mkdir: ERROR: fstat failed for %s (%d)\n",
path, errno, 0); path, errno);
return -1; return -1;
} }
/* /*
...@@ -584,8 +584,8 @@ trans_mkdir(char *path, int mode) ...@@ -584,8 +584,8 @@ trans_mkdir(char *path, int mode)
if (!S_ISDIR(fbuf.st_mode) || if (!S_ISDIR(fbuf.st_mode) ||
buf.st_dev != fbuf.st_dev || buf.st_dev != fbuf.st_dev ||
buf.st_ino != fbuf.st_ino) { buf.st_ino != fbuf.st_ino) {
PRMSG(1, "mkdir: ERROR: inode for %s changed\n", prmsg(1, "mkdir: ERROR: inode for %s changed\n",
path, 0, 0); path);
return -1; return -1;
} }
if (updateOwner && fchown(fd, 0, 0) == 0) if (updateOwner && fchown(fd, 0, 0) == 0)
...@@ -600,28 +600,27 @@ trans_mkdir(char *path, int mode) ...@@ -600,28 +600,27 @@ trans_mkdir(char *path, int mode)
if (updateOwner && !updatedOwner) { if (updateOwner && !updatedOwner) {
#ifdef FAIL_HARD #ifdef FAIL_HARD
if (status & FAIL_IF_NOT_ROOT) { if (status & FAIL_IF_NOT_ROOT) {
PRMSG(1, "mkdir: ERROR: Owner of %s must be set to root\n", prmsg(1, "mkdir: ERROR: Owner of %s must be set to root\n",
path, 0, 0); path);
return -1; return -1;
} }
#endif #endif
PRMSG(1, "mkdir: Owner of %s should be set to root\n", prmsg(1, "mkdir: Owner of %s should be set to root\n",
path, 0, 0); path);
} }
if (updateMode && !updatedMode) { if (updateMode && !updatedMode) {
#ifdef FAIL_HARD #ifdef FAIL_HARD
if (status & FAIL_IF_NOMODE) { if (status & FAIL_IF_NOMODE) {
PRMSG(1, "mkdir: ERROR: Mode of %s must be set to %04o\n", prmsg(1, "mkdir: ERROR: Mode of %s must be set to %04o\n",
path, mode, 0); path, mode);
return -1; return -1;
} }
#endif #endif
PRMSG(1, "mkdir: Mode of %s should be set to %04o\n", prmsg(1, "mkdir: Mode of %s should be set to %04o\n",
path, mode, 0); path, mode);
if (status & WARN_NO_ACCESS) { if (status & WARN_NO_ACCESS) {
PRMSG(1, "mkdir: this may cause subsequent errors\n", prmsg(1, "mkdir: this may cause subsequent errors\n");
0, 0, 0);
} }
} }
return 0; return 0;
......
...@@ -54,6 +54,9 @@ from The Open Group. ...@@ -54,6 +54,9 @@ from The Open Group.
#include <stdlib.h> #include <stdlib.h>
#endif #endif
#define XTRANS_TRANSPORT_C /* used to flag Xtransint.h that it's being used
here, not just #included in another file */
#include "Xtransint.h" #include "Xtransint.h"
#ifdef LOCALCONN #ifdef LOCALCONN
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment