os: xtrans: expand TRANS() macro to _XSERVTrans

Since TRANS() now will always expand the same, it's better for
maintenance, having the function names written explicitly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
Enrico Weigelt, metux IT consult 2025-06-26 19:09:07 +02:00
parent 8b3ab3586c
commit 5d0b9f4508
7 changed files with 380 additions and 515 deletions

View File

@ -90,25 +90,25 @@ from The Open Group.
static
Xtransport_table Xtransports[] = {
#if defined(TCPCONN)
{ &TRANS(SocketTCPFuncs), TRANS_SOCKET_TCP_INDEX },
{ &_XSERVTransSocketTCPFuncs, TRANS_SOCKET_TCP_INDEX },
#if defined(IPv6)
{ &TRANS(SocketINET6Funcs), TRANS_SOCKET_INET6_INDEX },
{ &_XSERVTransSocketINET6Funcs, TRANS_SOCKET_INET6_INDEX },
#endif /* IPv6 */
{ &TRANS(SocketINETFuncs), TRANS_SOCKET_INET_INDEX },
{ &_XSERVTransSocketINETFuncs, TRANS_SOCKET_INET_INDEX },
#endif /* TCPCONN */
#if defined(UNIXCONN)
#if !defined(LOCALCONN)
{ &TRANS(SocketLocalFuncs), TRANS_SOCKET_LOCAL_INDEX },
{ &_XSERVTransSocketLocalFuncs, TRANS_SOCKET_LOCAL_INDEX },
#endif /* !LOCALCONN */
{ &TRANS(SocketUNIXFuncs), TRANS_SOCKET_UNIX_INDEX },
{ &_XSERVTransSocketUNIXFuncs, TRANS_SOCKET_UNIX_INDEX },
#endif /* UNIXCONN */
#if defined(LOCALCONN)
{ &TRANS(LocalFuncs), TRANS_LOCAL_LOCAL_INDEX },
{ &_XSERVTransLocalFuncs, TRANS_LOCAL_LOCAL_INDEX },
#if defined(SVR4) || defined(__SVR4)
{ &TRANS(NAMEDFuncs), TRANS_LOCAL_NAMED_INDEX },
{ &_XSERVTransNAMEDFuncs, TRANS_LOCAL_NAMED_INDEX },
#endif
#ifdef __sun
{ &TRANS(PIPEFuncs), TRANS_LOCAL_PIPE_INDEX },
{ &_XSERVTransPIPEFuncs, TRANS_LOCAL_PIPE_INDEX },
#endif /* __sun */
#endif /* LOCALCONN */
};
@ -125,9 +125,7 @@ Xtransport_table Xtransports[] = {
/*
* These are a few utility function used by the public interface functions.
*/
void
TRANS(FreeConnInfo) (XtransConnInfo ciptr)
void _XSERVTransFreeConnInfo (XtransConnInfo ciptr)
{
prmsg (3,"FreeConnInfo(%p)\n", (void *) ciptr);
@ -148,7 +146,7 @@ TRANS(FreeConnInfo) (XtransConnInfo ciptr)
#define PROTOBUFSIZE 20
static Xtransport *
TRANS(SelectTransport) (const char *protocol)
_XSERVTransSelectTransport (const char *protocol)
{
#ifndef HAVE_STRCASECMP
@ -187,7 +185,7 @@ TRANS(SelectTransport) (const char *protocol)
}
static int
TRANS(ParseAddress) (const char *address,
_XSERVTransParseAddress (const char *address,
char **protocol, char **host, char **port)
{
@ -314,7 +312,7 @@ TRANS(ParseAddress) (const char *address,
_host_len = strlen(_host);
if (_host_len == 0)
{
TRANS(GetHostname) (hostnamebuf, sizeof (hostnamebuf));
_XSERVTransGetHostname (hostnamebuf, sizeof (hostnamebuf));
_host = hostnamebuf;
}
#ifdef IPv6
@ -389,13 +387,13 @@ done_parsing:
/*
* TRANS(Open) does all of the real work opening a connection. The only
* _XSERVTransOpen does all of the real work opening a connection. The only
* funny part about this is the type parameter which is used to decide which
* type of open to perform.
*/
static XtransConnInfo
TRANS(Open) (int type, const char *address)
_XSERVTransOpen (int type, const char *address)
{
char *protocol = NULL, *host = NULL, *port = NULL;
@ -405,7 +403,7 @@ TRANS(Open) (int type, const char *address)
prmsg (2,"Open(%d,%s)\n", type, address);
#if defined(WIN32) && defined(TCPCONN)
if (TRANS(WSAStartup)())
if (_XSERVTransWSAStartup())
{
prmsg (1,"Open: WSAStartup failed\n");
return NULL;
@ -414,7 +412,7 @@ TRANS(Open) (int type, const char *address)
/* Parse the Address */
if (TRANS(ParseAddress) (address, &protocol, &host, &port) == 0)
if (_XSERVTransParseAddress (address, &protocol, &host, &port) == 0)
{
prmsg (1,"Open: Unable to Parse address %s\n", address);
return NULL;
@ -422,7 +420,7 @@ TRANS(Open) (int type, const char *address)
/* Determine the transport type */
if ((thistrans = TRANS(SelectTransport) (protocol)) == NULL)
if ((thistrans = _XSERVTransSelectTransport (protocol)) == NULL)
{
prmsg (1,"Open: Unable to find transport for %s\n",
protocol);
@ -460,7 +458,7 @@ TRANS(Open) (int type, const char *address)
}
ciptr->transptr = thistrans;
ciptr->port = port; /* We need this for TRANS(Reopen) */
ciptr->port = port; /* We need this for _XSERVTransReopen */
free (protocol);
free (host);
@ -475,7 +473,7 @@ TRANS(Open) (int type, const char *address)
*/
static XtransConnInfo
TRANS(Reopen) (int type, int trans_id, int fd, const char *port)
_XSERVTransReopen (int type, int trans_id, int fd, const char *port)
{
XtransConnInfo ciptr = NULL;
@ -541,23 +539,22 @@ TRANS(Reopen) (int type, int trans_id, int fd, const char *port)
*/
XtransConnInfo
TRANS(OpenCOTSServer) (const char *address)
_XSERVTransOpenCOTSServer (const char *address)
{
prmsg (2,"OpenCOTSServer(%s)\n", address);
return TRANS(Open) (XTRANS_OPEN_COTS_SERVER, address);
return _XSERVTransOpen (XTRANS_OPEN_COTS_SERVER, address);
}
XtransConnInfo
TRANS(ReopenCOTSServer) (int trans_id, int fd, const char *port)
_XSERVTransReopenCOTSServer (int trans_id, int fd, const char *port)
{
prmsg (2,"ReopenCOTSServer(%d, %d, %s)\n", trans_id, fd, port);
return TRANS(Reopen) (XTRANS_OPEN_COTS_SERVER, trans_id, fd, port);
return _XSERVTransReopen (XTRANS_OPEN_COTS_SERVER, trans_id, fd, port);
}
int
TRANS(SetOption) (XtransConnInfo ciptr, int option, int arg)
int _XSERVTransSetOption (XtransConnInfo ciptr, int option, int arg)
{
int fd = ciptr->fd;
@ -605,7 +602,7 @@ TRANS(SetOption) (XtransConnInfo ciptr, int option, int arg)
int arg;
#endif
arg = 1;
/* IBM TCP/IP understands this option too well: it causes TRANS(Read) to fail
/* IBM TCP/IP understands this option too well: it causes _XSERVTransRead to fail
* eventually with EWOULDBLOCK */
ret = ioctl (fd, FIONBIO, &arg);
}
@ -639,21 +636,19 @@ TRANS(SetOption) (XtransConnInfo ciptr, int option, int arg)
return ret;
}
int
TRANS(CreateListener) (XtransConnInfo ciptr, const char *port, unsigned int flags)
int _XSERVTransCreateListener (XtransConnInfo ciptr, const char *port, unsigned int flags)
{
return ciptr->transptr->CreateListener (ciptr, port, flags);
}
int
TRANS(Received) (const char * protocol)
int _XSERVTransReceived (const char * protocol)
{
Xtransport *trans;
int i = 0, ret = 0;
prmsg (5, "Received(%s)\n", protocol);
if ((trans = TRANS(SelectTransport)(protocol)) == NULL)
if ((trans = _XSERVTransSelectTransport(protocol)) == NULL)
{
prmsg (1,"Received: unable to find transport: %s\n",
protocol);
@ -663,7 +658,7 @@ TRANS(Received) (const char * protocol)
if (trans->flags & TRANS_ALIAS) {
if (trans->nolisten)
while (trans->nolisten[i]) {
ret |= TRANS(Received)(trans->nolisten[i]);
ret |= _XSERVTransReceived(trans->nolisten[i]);
i++;
}
}
@ -672,13 +667,12 @@ TRANS(Received) (const char * protocol)
return ret;
}
int
TRANS(NoListen) (const char * protocol)
int _XSERVTransNoListen (const char * protocol)
{
Xtransport *trans;
int i = 0, ret = 0;
if ((trans = TRANS(SelectTransport)(protocol)) == NULL)
if ((trans = _XSERVTransSelectTransport(protocol)) == NULL)
{
prmsg (1,"TransNoListen: unable to find transport: %s\n",
protocol);
@ -688,7 +682,7 @@ TRANS(NoListen) (const char * protocol)
if (trans->flags & TRANS_ALIAS) {
if (trans->nolisten)
while (trans->nolisten[i]) {
ret |= TRANS(NoListen)(trans->nolisten[i]);
ret |= _XSERVTransNoListen(trans->nolisten[i]);
i++;
}
}
@ -697,13 +691,12 @@ TRANS(NoListen) (const char * protocol)
return ret;
}
int
TRANS(Listen) (const char * protocol)
int _XSERVTransListen (const char * protocol)
{
Xtransport *trans;
int i = 0, ret = 0;
if ((trans = TRANS(SelectTransport)(protocol)) == NULL)
if ((trans = _XSERVTransSelectTransport(protocol)) == NULL)
{
prmsg (1,"TransListen: unable to find transport: %s\n",
protocol);
@ -713,7 +706,7 @@ TRANS(Listen) (const char * protocol)
if (trans->flags & TRANS_ALIAS) {
if (trans->nolisten)
while (trans->nolisten[i]) {
ret |= TRANS(Listen)(trans->nolisten[i]);
ret |= _XSERVTransListen(trans->nolisten[i]);
i++;
}
}
@ -722,12 +715,11 @@ TRANS(Listen) (const char * protocol)
return ret;
}
int
TRANS(IsListening) (const char * protocol)
int _XSERVTransIsListening (const char * protocol)
{
Xtransport *trans;
if ((trans = TRANS(SelectTransport)(protocol)) == NULL)
if ((trans = _XSERVTransSelectTransport(protocol)) == NULL)
{
prmsg (1,"TransIsListening: unable to find transport: %s\n",
protocol);
@ -738,8 +730,7 @@ TRANS(IsListening) (const char * protocol)
return !(trans->flags & TRANS_NOLISTEN);
}
int
TRANS(ResetListener) (XtransConnInfo ciptr)
int _XSERVTransResetListener (XtransConnInfo ciptr)
{
if (ciptr->transptr->ResetListener)
return ciptr->transptr->ResetListener (ciptr);
@ -747,8 +738,7 @@ TRANS(ResetListener) (XtransConnInfo ciptr)
return TRANS_RESET_NOOP;
}
XtransConnInfo
TRANS(Accept) (XtransConnInfo ciptr, int *status)
XtransConnInfo _XSERVTransAccept (XtransConnInfo ciptr, int *status)
{
XtransConnInfo newciptr;
@ -762,65 +752,49 @@ TRANS(Accept) (XtransConnInfo ciptr, int *status)
return newciptr;
}
int
TRANS(BytesReadable) (XtransConnInfo ciptr, BytesReadable_t *pend)
int _XSERVTransBytesReadable (XtransConnInfo ciptr, BytesReadable_t *pend)
{
return ciptr->transptr->BytesReadable (ciptr, pend);
}
int
TRANS(Read) (XtransConnInfo ciptr, char *buf, int size)
int _XSERVTransRead (XtransConnInfo ciptr, char *buf, int size)
{
return ciptr->transptr->Read (ciptr, buf, size);
}
int
TRANS(Write) (XtransConnInfo ciptr, const char *buf, int size)
int _XSERVTransWrite (XtransConnInfo ciptr, const char *buf, int size)
{
return ciptr->transptr->Write (ciptr, buf, size);
}
int
TRANS(Readv) (XtransConnInfo ciptr, struct iovec *buf, int size)
int _XSERVTransReadv (XtransConnInfo ciptr, struct iovec *buf, int size)
{
return ciptr->transptr->Readv (ciptr, buf, size);
}
int
TRANS(Writev) (XtransConnInfo ciptr, struct iovec *buf, int size)
int _XSERVTransWritev (XtransConnInfo ciptr, struct iovec *buf, int size)
{
return ciptr->transptr->Writev (ciptr, buf, size);
}
#if XTRANS_SEND_FDS
int
TRANS(SendFd) (XtransConnInfo ciptr, int fd, int do_close)
int _XSERVTransSendFd (XtransConnInfo ciptr, int fd, int do_close)
{
return ciptr->transptr->SendFd(ciptr, fd, do_close);
}
int
TRANS(RecvFd) (XtransConnInfo ciptr)
int _XSERVTransRecvFd (XtransConnInfo ciptr)
{
return ciptr->transptr->RecvFd(ciptr);
}
#endif
int
TRANS(Disconnect) (XtransConnInfo ciptr)
int _XSERVTransDisconnect (XtransConnInfo ciptr)
{
return ciptr->transptr->Disconnect (ciptr);
}
int
TRANS(Close) (XtransConnInfo ciptr)
int _XSERVTransClose (XtransConnInfo ciptr)
{
int ret;
@ -828,14 +802,12 @@ TRANS(Close) (XtransConnInfo ciptr)
ret = ciptr->transptr->Close (ciptr);
TRANS(FreeConnInfo) (ciptr);
_XSERVTransFreeConnInfo (ciptr);
return ret;
}
int
TRANS(CloseForCloning) (XtransConnInfo ciptr)
int _XSERVTransCloseForCloning (XtransConnInfo ciptr)
{
int ret;
@ -843,22 +815,18 @@ TRANS(CloseForCloning) (XtransConnInfo ciptr)
ret = ciptr->transptr->CloseForCloning (ciptr);
TRANS(FreeConnInfo) (ciptr);
_XSERVTransFreeConnInfo (ciptr);
return ret;
}
int
TRANS(IsLocal) (XtransConnInfo ciptr)
int _XSERVTransIsLocal (XtransConnInfo ciptr)
{
return (ciptr->family == AF_UNIX);
}
int
TRANS(GetPeerAddr) (XtransConnInfo ciptr, int *familyp, int *addrlenp,
int _XSERVTransGetPeerAddr (XtransConnInfo ciptr, int *familyp, int *addrlenp,
Xtransaddr **addrp)
{
prmsg (2,"GetPeerAddr(%d)\n", ciptr->fd);
@ -875,10 +843,7 @@ TRANS(GetPeerAddr) (XtransConnInfo ciptr, int *familyp, int *addrlenp,
return 0;
}
int
TRANS(GetConnectionNumber) (XtransConnInfo ciptr)
int _XSERVTransGetConnectionNumber (XtransConnInfo ciptr)
{
return ciptr->fd;
}
@ -971,7 +936,7 @@ receive_listening_fds(const char* port, XtransConnInfo* temp_ciptrs,
return -1;
}
ciptr = TRANS(ReopenCOTSServer)(ti, i + SD_LISTEN_FDS_START, port);
ciptr = _XSERVTransReopenCOTSServer(ti, i + SD_LISTEN_FDS_START, port);
if (!ciptr)
{
prmsg (1, "receive_listening_fds:"
@ -982,7 +947,7 @@ receive_listening_fds(const char* port, XtransConnInfo* temp_ciptrs,
prmsg (5, "receive_listening_fds: received listener for %s, %d\n",
tn, ciptr->fd);
temp_ciptrs[(*count_ret)++] = ciptr;
TRANS(Received)(tn);
_XSERVTransReceived(tn);
}
#endif /* HAVE_SYSTEMD_DAEMON */
return 0;
@ -992,10 +957,8 @@ receive_listening_fds(const char* port, XtransConnInfo* temp_ciptrs,
extern int xquartz_launchd_fd;
#endif
int
TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
int _XSERVTransMakeAllCOTSServerListeners (const char *port, int *partial,
int *count_ret, XtransConnInfo **ciptrs_ret)
{
char buffer[256]; /* ??? What size ?? */
XtransConnInfo ciptr, temp_ciptrs[NUMTRANS] = { NULL };
@ -1012,7 +975,7 @@ TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
#ifdef XQUARTZ_EXPORTS_LAUNCHD_FD
fprintf(stderr, "Launchd socket fd: %d\n", xquartz_launchd_fd);
if(xquartz_launchd_fd != -1) {
if((ciptr = TRANS(ReopenCOTSServer(TRANS_SOCKET_LOCAL_INDEX,
if((ciptr = _XSERVTransReopenCOTSServer(TRANS_SOCKET_LOCAL_INDEX,
xquartz_launchd_fd, getenv("DISPLAY"))))==NULL)
fprintf(stderr,"Got NULL while trying to Reopen launchd port\n");
else
@ -1038,7 +1001,7 @@ TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
prmsg (5,"MakeAllCOTSServerListeners: opening %s\n",
buffer);
if ((ciptr = TRANS(OpenCOTSServer(buffer))) == NULL)
if ((ciptr = _XSERVTransOpenCOTSServer(buffer)) == NULL)
{
if (trans->flags & TRANS_DISABLED)
continue;
@ -1054,7 +1017,7 @@ TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
flags |= ADDR_IN_USE_ALLOWED;
#endif
if ((status = TRANS(CreateListener (ciptr, port, flags))) < 0)
if ((status = _XSERVTransCreateListener (ciptr, port, flags)) < 0)
{
if (*partial != 0)
continue;
@ -1072,7 +1035,7 @@ TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
for (j = 0; j < *count_ret; j++)
if (temp_ciptrs[j] != NULL)
TRANS(Close) (temp_ciptrs[j]);
_XSERVTransClose (temp_ciptrs[j]);
*count_ret = 0;
*ciptrs_ret = NULL;
@ -1138,9 +1101,7 @@ TRANS(MakeAllCOTSServerListeners) (const char *port, int *partial,
/*
* emulate readv
*/
static int TRANS(ReadV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
static int _XSERVTransReadV (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
{
int i, len, total;
char *base;
@ -1151,7 +1112,7 @@ static int TRANS(ReadV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
base = iov->iov_base;
while (len > 0) {
register int nbytes;
nbytes = TRANS(Read) (ciptr, base, len);
nbytes = _XSERVTransRead (ciptr, base, len);
if (nbytes < 0 && total == 0) return -1;
if (nbytes <= 0) return total;
ESET(0);
@ -1167,9 +1128,7 @@ static int TRANS(ReadV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
/*
* emulate writev
*/
static int TRANS(WriteV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
static int _XSERVTransWriteV (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
{
int i, len, total;
char *base;
@ -1180,7 +1139,7 @@ static int TRANS(WriteV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
base = iov->iov_base;
while (len > 0) {
register int nbytes;
nbytes = TRANS(Write) (ciptr, base, len);
nbytes = _XSERVTransWrite (ciptr, base, len);
if (nbytes < 0 && total == 0) return -1;
if (nbytes <= 0) return total;
ESET(0);
@ -1196,10 +1155,9 @@ static int TRANS(WriteV) (XtransConnInfo ciptr, struct iovec *iov, int iovcnt)
/*
* TRANS(GetHostname) - similar to gethostname but allows special processing.
* _XSERVTransGetHostname - similar to gethostname but allows special processing.
*/
int TRANS(GetHostname) (char *buf, int maxlen)
int _XSERVTransGetHostname (char *buf, int maxlen)
{
struct utsname name;
uname (&name);

View File

@ -68,7 +68,6 @@ from The Open Group.
* Set the functions names according to where this code is being compiled.
*/
#define TRANS(func) _XSERVTrans##func
#ifdef XTRANSDEBUG
static const char *__xtransname = "_XSERVTrans";
#endif
@ -112,7 +111,7 @@ typedef long BytesReadable_t;
#if defined(WIN32)
/*
* TRANS(Readv) and TRANS(Writev) use struct iovec, normally found
* _XSERVTransReadv and _XSERVTransWritev use struct iovec, normally found
* in Berkeley systems in <sys/uio.h>. See the readv(2) and writev(2)
* manual pages for details.
*/
@ -176,118 +175,118 @@ typedef struct _XtransConnInfo *XtransConnInfo;
* Function prototypes for the exposed interface
*/
void TRANS(FreeConnInfo) (
void _XSERVTransFreeConnInfo (
XtransConnInfo /* ciptr */
);
XtransConnInfo TRANS(OpenCOTSServer)(
XtransConnInfo _XSERVTransOpenCOTSServer(
const char * /* address */
);
XtransConnInfo TRANS(ReopenCOTSServer)(
XtransConnInfo _XSERVTransReopenCOTSServer(
int, /* trans_id */
int, /* fd */
const char * /* port */
);
int TRANS(SetOption)(
int _XSERVTransSetOption(
XtransConnInfo, /* ciptr */
int, /* option */
int /* arg */
);
int TRANS(CreateListener)(
int _XSERVTransCreateListener(
XtransConnInfo, /* ciptr */
const char *, /* port */
unsigned int /* flags */
);
int TRANS(Received) (
int _XSERVTransReceived (
const char* /* protocol*/
);
int TRANS(NoListen) (
int _XSERVTransNoListen (
const char* /* protocol*/
);
int TRANS(Listen) (
int _XSERVTransListen (
const char* /* protocol*/
);
int TRANS(IsListening) (
int _XSERVTransIsListening (
const char* /* protocol*/
);
int TRANS(ResetListener)(
int _XSERVTransResetListener (
XtransConnInfo /* ciptr */
);
XtransConnInfo TRANS(Accept)(
XtransConnInfo _XSERVTransAccept (
XtransConnInfo, /* ciptr */
int * /* status */
);
int TRANS(BytesReadable)(
int _XSERVTransBytesReadable (
XtransConnInfo, /* ciptr */
BytesReadable_t * /* pend */
);
int TRANS(Read)(
int _XSERVTransRead (
XtransConnInfo, /* ciptr */
char *, /* buf */
int /* size */
);
int TRANS(Write)(
int _XSERVTransWrite (
XtransConnInfo, /* ciptr */
const char *, /* buf */
int /* size */
);
int TRANS(Readv)(
int _XSERVTransReadv (
XtransConnInfo, /* ciptr */
struct iovec *, /* buf */
int /* size */
);
int TRANS(Writev)(
int _XSERVTransWritev (
XtransConnInfo, /* ciptr */
struct iovec *, /* buf */
int /* size */
);
int TRANS(SendFd) (XtransConnInfo ciptr, int fd, int do_close);
int _XSERVTransSendFd (XtransConnInfo ciptr, int fd, int do_close);
int TRANS(RecvFd) (XtransConnInfo ciptr);
int _XSERVTransRecvFd (XtransConnInfo ciptr);
int TRANS(Disconnect)(
int _XSERVTransDisconnect (
XtransConnInfo /* ciptr */
);
int TRANS(Close)(
int _XSERVTransClose (
XtransConnInfo /* ciptr */
);
int TRANS(CloseForCloning)(
int _XSERVTransCloseForCloning (
XtransConnInfo /* ciptr */
);
int TRANS(IsLocal)(
int _XSERVTransIsLocal (
XtransConnInfo /* ciptr */
);
int TRANS(GetPeerAddr)(
int _XSERVTransGetPeerAddr (
XtransConnInfo, /* ciptr */
int *, /* familyp */
int *, /* addrlenp */
Xtransaddr ** /* addrp */
);
int TRANS(GetConnectionNumber)(
int _XSERVTransGetConnectionNumber (
XtransConnInfo /* ciptr */
);
int TRANS(MakeAllCOTSServerListeners)(
int _XSERVTransMakeAllCOTSServerListeners (
const char *, /* port */
int *, /* partial */
int *, /* count_ret */
@ -298,20 +297,19 @@ int TRANS(MakeAllCOTSServerListeners)(
* Function Prototypes for Utility Functions.
*/
int TRANS(ConvertAddress)(
int _XSERVTransConvertAddress (
int *, /* familyp */
int *, /* addrlenp */
Xtransaddr ** /* addrp */
);
int
TRANS(GetHostname) (
int _XSERVTransGetHostname (
char * /* buf */,
int /* maxlen */
);
#if defined(WIN32) && defined(TCPCONN)
int TRANS(WSAStartup)();
int _XSERVTransWSAStartup();
#endif
#endif /* _XTRANS_H_ */

View File

@ -266,9 +266,9 @@ typedef struct _Xtransport_table {
#ifdef WIN32
#define READV(ciptr, iov, iovcnt) TRANS(ReadV)(ciptr, iov, iovcnt)
#define READV(ciptr, iov, iovcnt) _XSERVTransReadV(ciptr, iov, iovcnt)
static int TRANS(ReadV)(
static int _XSERVTransReadV(
XtransConnInfo, /* ciptr */
struct iovec *, /* iov */
int /* iovcnt */
@ -283,9 +283,9 @@ static int TRANS(ReadV)(
#ifdef WIN32
#define WRITEV(ciptr, iov, iovcnt) TRANS(WriteV)(ciptr, iov, iovcnt)
#define WRITEV(ciptr, iov, iovcnt) _XSERVTransWriteV(ciptr, iov, iovcnt)
static int TRANS(WriteV)(
static int _XSERVTransWriteV(
XtransConnInfo, /* ciptr */
struct iovec *, /* iov */
int /* iovcnt */

View File

@ -101,7 +101,7 @@ from The Open Group.
# define LOCAL_TRANS_NAMED
#endif
static int TRANS(LocalClose)(XtransConnInfo ciptr);
static int _XSERVTransLocalClose(XtransConnInfo ciptr);
/*
* These functions actually implement the local connection mechanisms.
@ -109,42 +109,34 @@ static int TRANS(LocalClose)(XtransConnInfo ciptr);
/* Type Not Supported */
static int
TRANS(OpenFail)(XtransConnInfo ciptr _X_UNUSED, const char *port _X_UNUSED)
static int _XSERVTransOpenFail(XtransConnInfo ciptr _X_UNUSED, const char *port _X_UNUSED)
{
return -1;
}
static int
TRANS(ReopenFail)(XtransConnInfo ciptr _X_UNUSED, int fd _X_UNUSED,
static int ReopenFail(XtransConnInfo ciptr _X_UNUSED, int fd _X_UNUSED,
const char *port _X_UNUSED)
{
return 0;
}
#if XTRANS_SEND_FDS
static int
TRANS(LocalRecvFdInvalid)(XtransConnInfo ciptr)
static int _XSERVTransLocalRecvFdInvalid(XtransConnInfo ciptr)
{
errno = EINVAL;
return -1;
}
static int
TRANS(LocalSendFdInvalid)(XtransConnInfo ciptr, int fd, int do_close)
static int LocalSendFdInvalid(XtransConnInfo ciptr, int fd, int do_close)
{
errno = EINVAL;
return -1;
}
#endif
static int
TRANS(FillAddrInfo)(XtransConnInfo ciptr,
const char *sun_path, const char *peer_sun_path)
static int _XSERVTransFillAddrInfo(XtransConnInfo ciptr,
const char *sun_path, const char *peer_sun_path)
{
struct sockaddr_un *sunaddr;
struct sockaddr_un *p_sunaddr;
@ -210,8 +202,7 @@ TRANS(FillAddrInfo)(XtransConnInfo ciptr,
/* NAMED */
static int
TRANS(NAMEDOpenPipe)(const char *server_path)
static int _XSERVTransNAMEDOpenPipe(const char *server_path)
{
int fd, pipefd[2];
struct stat sbuf;
@ -270,8 +261,7 @@ TRANS(NAMEDOpenPipe)(const char *server_path)
return(pipefd[1]);
}
static int
TRANS(NAMEDOpenServer)(XtransConnInfo ciptr, const char *port)
static int NAMEDOpenServer(XtransConnInfo ciptr, const char *port)
{
int fd;
char server_path[64];
@ -290,7 +280,7 @@ TRANS(NAMEDOpenServer)(XtransConnInfo ciptr, const char *port)
NAMEDNODENAME, (long)getpid());
}
fd = TRANS(NAMEDOpenPipe)(server_path);
fd = _XSERVTransNAMEDOpenPipe(server_path);
if (fd < 0) {
return -1;
}
@ -299,18 +289,17 @@ TRANS(NAMEDOpenServer)(XtransConnInfo ciptr, const char *port)
* Everything looks good: fill in the XtransConnInfo structure.
*/
if (TRANS(FillAddrInfo) (ciptr, server_path, server_path) == 0)
if (_XSERVTransFillAddrInfo (ciptr, server_path, server_path) == 0)
{
prmsg(1,"NAMEDOpenServer: failed to fill in addr info\n");
TRANS(LocalClose)(ciptr);
_XSERVTransLocalClose(ciptr);
return -1;
}
return fd;
}
static int
TRANS(NAMEDResetListener) (XtransConnInfo ciptr)
static int NAMEDResetListener (XtransConnInfo ciptr)
{
struct sockaddr_un *sockname=(struct sockaddr_un *) ciptr->addr;
@ -326,8 +315,8 @@ TRANS(NAMEDResetListener) (XtransConnInfo ciptr)
if (stat (sockname->sun_path, &statb) == -1 ||
(statb.st_mode & S_IFMT) != S_IFIFO) {
prmsg(3, "Pipe %s trashed, recreating\n", sockname->sun_path);
TRANS(LocalClose)(ciptr);
ciptr->fd = TRANS(NAMEDOpenPipe)(sockname->sun_path);
_XSERVTransLocalClose(ciptr);
ciptr->fd = _XSERVTransNAMEDOpenPipe(sockname->sun_path);
if (ciptr->fd >= 0)
return TRANS_RESET_NEW_FD;
else
@ -337,9 +326,8 @@ TRANS(NAMEDResetListener) (XtransConnInfo ciptr)
return TRANS_RESET_NOOP;
}
static int
TRANS(NAMEDAccept)(XtransConnInfo ciptr, XtransConnInfo newciptr, int *status)
static int _XSERVTransNAMEDAccept(
XtransConnInfo ciptr, XtransConnInfo newciptr, int *status)
{
struct strrecvfd str;
@ -387,9 +375,8 @@ TRANS(NAMEDAccept)(XtransConnInfo ciptr, XtransConnInfo newciptr, int *status)
#ifdef LOCAL_TRANS_NAMED
static int
TRANS(NAMEDReopenServer)(XtransConnInfo ciptr, int fd _X_UNUSED, const char *port)
static int _XSERVTransNAMEDReopenServer(
XtransConnInfo ciptr, int fd _X_UNUSED, const char *port)
{
char server_path[64];
@ -407,7 +394,7 @@ TRANS(NAMEDReopenServer)(XtransConnInfo ciptr, int fd _X_UNUSED, const char *por
NAMEDNODENAME, (long)getpid());
}
if (TRANS(FillAddrInfo) (ciptr, server_path, server_path) == 0)
if (_XSERVTransFillAddrInfo) (ciptr, server_path, server_path) == 0)
{
prmsg(1,"NAMEDReopenServer: failed to fill in addr info\n");
return 0;
@ -455,41 +442,42 @@ typedef struct _LOCALtrans2dev {
} LOCALtrans2dev;
static LOCALtrans2dev LOCALtrans2devtab[] = {
{"",
TRANS(NAMEDOpenServer),
TRANS(OpenFail),
TRANS(NAMEDReopenServer),
TRANS(ReopenFail),
TRANS(NAMEDResetListener),
TRANS(NAMEDAccept)
{
"",
_XSERVTransNAMEDOpenServer,
_XSERVTransOpenFail,
_XSERVTransNAMEDReopenServer,
_XSERVTransReopenFail,
_XSERVTransNAMEDResetListener,
_XSERVTransNAMEDAccept
},
{"local",
TRANS(NAMEDOpenServer),
TRANS(OpenFail),
TRANS(NAMEDReopenServer),
TRANS(ReopenFail),
TRANS(NAMEDResetListener),
TRANS(NAMEDAccept)
{
"local",
_XSERVTransNAMEDOpenServer,
_XSERVTransOpenFail,
_XSERVTransNAMEDReopenServer,
_XSERVTransReopenFail,
_XSERVTrans_NAMEDResetListener,
_XSERVTransNAMEDAccept
},
#ifdef LOCAL_TRANS_NAMED
{"named",
TRANS(NAMEDOpenServer),
TRANS(OpenFail),
TRANS(NAMEDReopenServer),
TRANS(ReopenFail),
TRANS(NAMEDResetListener),
TRANS(NAMEDAccept)
{
"named",
_XSERVTransNAMEDOpenServer,
_XSERVTransOpenFail,
_XSERVTransNAMEDReopenServer,
_XSERVTransReopenFail,
_XSERVTransNAMEDResetListener,
_XSERVTransNAMEDAccept
},
{"pipe",
TRANS(NAMEDOpenServer),
TRANS(OpenFail),
TRANS(NAMEDReopenServer),
TRANS(ReopenFail),
TRANS(NAMEDResetListener),
TRANS(NAMEDAccept)
{
"pipe",
_XSERVTransNAMEDOpenServer,
_XSERVTransOpenFail,
_XSERVTransNAMEDReopenServer,
_XSERVTransReopenFail,
_XSERVTransNAMEDResetListener,
_XSERVTransNAMEDAccept
},
#endif /* LOCAL_TRANS_NAMED */
@ -504,9 +492,7 @@ static char *freeXLOCAL=NULL;
#define DEF_XLOCAL "UNIX:NAMED"
static void
TRANS(LocalInitTransports)(const char *protocol)
static void _XSERVTransLocalInitTransports(const char *protocol)
{
prmsg(3,"LocalInitTransports(%s)\n", protocol);
@ -522,9 +508,7 @@ TRANS(LocalInitTransports)(const char *protocol)
}
}
static void
TRANS(LocalEndTransports)(void)
static void _XSERVTransLocalEndTransports(void)
{
prmsg(3,"LocalEndTransports()\n");
free(freeXLOCAL);
@ -533,10 +517,9 @@ TRANS(LocalEndTransports)(void)
#define TYPEBUFSIZE 32
static XtransConnInfo
TRANS(LocalOpenServer)(int type, const char *protocol,
const char *host _X_UNUSED, const char *port)
static XtransConnInfo _XSERVTransLocalOpenServer(
int type, const char *protocol,
const char *host _X_UNUSED, const char *port)
{
XtransConnInfo ciptr;
@ -585,9 +568,8 @@ TRANS(LocalOpenServer)(int type, const char *protocol,
return NULL;
}
static XtransConnInfo
TRANS(LocalReopenServer)(int type, int index, int fd, const char *port)
static XtransConnInfo _XSERVTransLocalReopenServer(int type, int index,
int fd, const char *port)
{
XtransConnInfo ciptr;
int stat = 0;
@ -628,10 +610,9 @@ TRANS(LocalReopenServer)(int type, int index, int fd, const char *port)
* This is the Local implementation of the X Transport service layer
*/
static XtransConnInfo
TRANS(LocalOpenCOTSServer)(Xtransport *thistrans, const char *protocol,
const char *host, const char *port)
static XtransConnInfo _XSERVTransLocalOpenCOTSServer(
Xtransport *thistrans, const char *protocol,
const char *host, const char *port)
{
char *typetocheck = NULL;
int found = 0;
@ -639,7 +620,7 @@ TRANS(LocalOpenCOTSServer)(Xtransport *thistrans, const char *protocol,
prmsg(2,"LocalOpenCOTSServer(%s,%s,%s)\n",protocol,host,port);
/* Check if this local type is in the XLOCAL list */
TRANS(LocalInitTransports)("local");
_XSERVTransLocalInitTransports("local");
typetocheck = workingXLOCAL;
while (typetocheck && !found) {
#ifndef HAVE_STRCASECMP
@ -662,7 +643,7 @@ TRANS(LocalOpenCOTSServer)(Xtransport *thistrans, const char *protocol,
found = 1;
typetocheck = workingXLOCAL;
}
TRANS(LocalEndTransports)();
_XSERVTransLocalEndTransports();
if (!found) {
prmsg(3,"LocalOpenCOTSServer: disabling %s\n",thistrans->TransName);
@ -670,12 +651,11 @@ TRANS(LocalOpenCOTSServer)(Xtransport *thistrans, const char *protocol,
return NULL;
}
return TRANS(LocalOpenServer)(XTRANS_OPEN_COTS_SERVER, protocol, host, port);
return _XSERVTransLocalOpenServer(XTRANS_OPEN_COTS_SERVER, protocol, host, port);
}
static XtransConnInfo
TRANS(LocalReopenCOTSServer)(Xtransport *thistrans, int fd, const char *port)
static XtransConnInfo _XSERVTransLocalReopenCOTSServer(
Xtransport *thistrans, int fd, const char *port)
{
unsigned int index;
@ -693,32 +673,26 @@ TRANS(LocalReopenCOTSServer)(Xtransport *thistrans, int fd, const char *port)
return (NULL);
}
return TRANS(LocalReopenServer)(XTRANS_OPEN_COTS_SERVER,
return _XSERVTransLocalReopenServer(XTRANS_OPEN_COTS_SERVER,
index, fd, port);
}
static int
TRANS(LocalSetOption)(XtransConnInfo ciptr, int option, int arg)
static int _XSERVTransLocalSetOption(XtransConnInfo ciptr, int option, int arg)
{
prmsg(2,"LocalSetOption(%d,%d,%d)\n",ciptr->fd,option,arg);
return -1;
}
static int
TRANS(LocalCreateListener)(XtransConnInfo ciptr, const char *port,
unsigned int flags _X_UNUSED)
static int _XSERVTransLocalCreateListener(
XtransConnInfo ciptr, const char *port, unsigned int flags _X_UNUSED)
{
prmsg(2,"LocalCreateListener(%p->%d,%s)\n", (void *) ciptr, ciptr->fd, port);
return 0;
}
static int
TRANS(LocalResetListener)(XtransConnInfo ciptr)
static int _XSERVTransLocalResetListener(XtransConnInfo ciptr)
{
LOCALtrans2dev *transptr;
@ -732,9 +706,7 @@ TRANS(LocalResetListener)(XtransConnInfo ciptr)
}
static XtransConnInfo
TRANS(LocalAccept)(XtransConnInfo ciptr, int *status)
static XtransConnInfo _XSERVTransLocalAccept(XtransConnInfo ciptr, int *status)
{
XtransConnInfo newciptr;
LOCALtrans2dev *transptr;
@ -767,9 +739,7 @@ TRANS(LocalAccept)(XtransConnInfo ciptr, int *status)
return newciptr;
}
static int
TRANS(LocalBytesReadable)(XtransConnInfo ciptr, BytesReadable_t *pend )
static int _XSERVTransLocalBytesReadable(XtransConnInfo ciptr, BytesReadable_t *pend )
{
prmsg(2,"LocalBytesReadable(%p->%d,%p)\n",
(void *) ciptr, ciptr->fd, (void *) pend);
@ -777,54 +747,42 @@ TRANS(LocalBytesReadable)(XtransConnInfo ciptr, BytesReadable_t *pend )
return ioctl(ciptr->fd, FIONREAD, (char *)pend);
}
static int
TRANS(LocalRead)(XtransConnInfo ciptr, char *buf, int size)
static int _XSERVTransLocalRead(XtransConnInfo ciptr, char *buf, int size)
{
prmsg(2,"LocalRead(%d,%p,%d)\n", ciptr->fd, (void *) buf, size );
return read(ciptr->fd,buf,size);
}
static int
TRANS(LocalWrite)(XtransConnInfo ciptr, const char *buf, int size)
static int _XSERVTransLocalWrite(XtransConnInfo ciptr, const char *buf, int size)
{
prmsg(2,"LocalWrite(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size );
return write(ciptr->fd,buf,size);
}
static int
TRANS(LocalReadv)(XtransConnInfo ciptr, struct iovec *buf, int size)
static int _XSERVTransLocalReadv(XtransConnInfo ciptr, struct iovec *buf, int size)
{
prmsg(2,"LocalReadv(%d,%p,%d)\n", ciptr->fd, (void *) buf, size );
return READV(ciptr,buf,size);
}
static int
TRANS(LocalWritev)(XtransConnInfo ciptr, struct iovec *buf, int size)
static int _XSERVTransLocalWritev(XtransConnInfo ciptr, struct iovec *buf, int size)
{
prmsg(2,"LocalWritev(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size );
return WRITEV(ciptr,buf,size);
}
static int
TRANS(LocalDisconnect)(XtransConnInfo ciptr)
static int _XSERVTransLocalDisconnect(XtransConnInfo ciptr)
{
prmsg(2,"LocalDisconnect(%p->%d)\n", (void *) ciptr, ciptr->fd);
return 0;
}
static int
TRANS(LocalClose)(XtransConnInfo ciptr)
static int _XSERVTransLocalClose(XtransConnInfo ciptr)
{
struct sockaddr_un *sockname=(struct sockaddr_un *) ciptr->addr;
int ret;
@ -845,9 +803,7 @@ TRANS(LocalClose)(XtransConnInfo ciptr)
return ret;
}
static int
TRANS(LocalCloseForCloning)(XtransConnInfo ciptr)
static int _XSERVTransLocalCloseForCloning(XtransConnInfo ciptr)
{
int ret;
@ -875,81 +831,81 @@ static const char * local_aliases[] = {
"pipe", /* compatibility with Solaris Xlib */
NULL };
static Xtransport TRANS(LocalFuncs) = {
static Xtransport _XSERVTransLocalFuncs = {
/* Local Interface */
"local",
TRANS_ALIAS | TRANS_LOCAL,
local_aliases,
TRANS(LocalOpenCOTSServer),
TRANS(LocalReopenCOTSServer),
TRANS(LocalSetOption),
TRANS(LocalCreateListener),
TRANS(LocalResetListener),
TRANS(LocalAccept),
TRANS(LocalBytesReadable),
TRANS(LocalRead),
TRANS(LocalWrite),
TRANS(LocalReadv),
TRANS(LocalWritev),
_XSERVTransLocalOpenCOTSServer,
_XSERVTransLocalReopenCOTSServer,
_XSERVTransLocalSetOption,
_XSERVTransLocalCreateListener,
_XSERVTransLocalResetListener,
_XSERVTransLocalAccept,
_XSERVTransLocalBytesReadable,
_XSERVTransLocalRead,
_XSERVTransLocalWrite,
_XSERVTransLocalReadv,
_XSERVTransLocalWritev,
#if XTRANS_SEND_FDS
TRANS(LocalSendFdInvalid),
TRANS(LocalRecvFdInvalid),
_XSERVTransLocalSendFdInvalid,
_XSERVTransLocalRecvFdInvalid,
#endif
TRANS(LocalDisconnect),
TRANS(LocalClose),
TRANS(LocalCloseForCloning),
_XSERVTransLocalDisconnect,
_XSERVTransLocalClose,
_XSERVTransLocalCloseForCloning,
};
#ifdef LOCAL_TRANS_NAMED
static Xtransport TRANS(NAMEDFuncs) = {
static Xtransport _XSERVTransNAMEDFuncs = {
/* Local Interface */
"named",
TRANS_LOCAL,
NULL,
TRANS(LocalOpenCOTSServer),
TRANS(LocalReopenCOTSServer),
TRANS(LocalSetOption),
TRANS(LocalCreateListener),
TRANS(LocalResetListener),
TRANS(LocalAccept),
TRANS(LocalBytesReadable),
TRANS(LocalRead),
TRANS(LocalWrite),
TRANS(LocalReadv),
TRANS(LocalWritev),
_XSERVTransLocalOpenCOTSServer,
_XSERVTransLocalReopenCOTSServer,
_XSERVTransLocalSetOption,
_XSERVTransLocalCreateListener,
_XSERVTransLocalResetListener,
_XSERVTransLocalAccept,
_XSERVTransLocalBytesReadable,
_XSERVTransLocalRead,
_XSERVTransLocalWrite,
_XSERVTransLocalReadv,
_XSERVTransLocalWritev,
#if XTRANS_SEND_FDS
TRANS(LocalSendFdInvalid),
TRANS(LocalRecvFdInvalid),
_XSERVTransLocalSendFdInvalid,
_XSERVTransLocalRecvFdInvalid,
#endif
TRANS(LocalDisconnect),
TRANS(LocalClose),
TRANS(LocalCloseForCloning),
_XSERVTransLocalDisconnect,
_XSERVTransLocalClose,
_XSERVTransLocalCloseForCloning,
};
static Xtransport TRANS(PIPEFuncs) = {
static Xtransport _XSERVTransPIPEFuncs = {
/* Local Interface */
"pipe",
TRANS_ALIAS | TRANS_LOCAL,
NULL,
TRANS(LocalOpenCOTSServer),
TRANS(LocalReopenCOTSServer),
TRANS(LocalSetOption),
TRANS(LocalCreateListener),
TRANS(LocalResetListener),
TRANS(LocalAccept),
TRANS(LocalBytesReadable),
TRANS(LocalRead),
TRANS(LocalWrite),
TRANS(LocalReadv),
TRANS(LocalWritev),
_XSERVTransLocalOpenCOTSServer,
_XSERVTransLocalReopenCOTSServer,
_XSERVTransLocalSetOption,
_XSERVTransLocalCreateListener,
_XSERVTransLocalResetListener,
_XSERVTransLocalAccept,
_XSERVTransLocalBytesReadable,
_XSERVTransLocalRead,
_XSERVTransLocalWrite,
_XSERVTransLocalReadv,
_XSERVTransLocalWritev,
#if XTRANS_SEND_FDS
TRANS(LocalSendFdInvalid),
TRANS(LocalRecvFdInvalid),
_XSERVTransLocalSendFdInvalid,
_XSERVTransLocalRecvFdInvalid,
#endif
TRANS(LocalDisconnect),
TRANS(LocalClose),
TRANS(LocalCloseForCloning),
_XSERVTransLocalDisconnect,
_XSERVTransLocalClose,
_XSERVTransLocalCloseForCloning,
};
#endif /* LOCAL_TRANS_NAMED */

View File

@ -208,7 +208,7 @@ static Sockettrans2dev Sockettrans2devtab[] = {
#define NUMSOCKETFAMILIES (sizeof(Sockettrans2devtab)/sizeof(Sockettrans2dev))
#ifdef TCPCONN
static int TRANS(SocketINETClose) (XtransConnInfo ciptr);
static int _XSERVTransSocketINETClose (XtransConnInfo ciptr);
#endif
static int
@ -249,9 +249,7 @@ is_numeric (const char *str)
* These are some utility function used by the real interface function below.
*/
static int
TRANS(SocketSelectFamily) (int first, const char *family)
static int _XSERVTransSocketSelectFamily (int first, const char *family)
{
int i;
@ -272,9 +270,7 @@ TRANS(SocketSelectFamily) (int first, const char *family)
* XtransConnInfo structure for the connection.
*/
static int
TRANS(SocketINETGetAddr) (XtransConnInfo ciptr)
static int _XSERVTransSocketINETGetAddr (XtransConnInfo ciptr)
{
#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
struct sockaddr_storage sockname;
@ -323,9 +319,7 @@ TRANS(SocketINETGetAddr) (XtransConnInfo ciptr)
* XtransConnInfo structure for the connection.
*/
static int
TRANS(SocketINETGetPeerAddr) (XtransConnInfo ciptr)
static int _XSERVTransSocketINETGetPeerAddr (XtransConnInfo ciptr)
{
#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
struct sockaddr_storage sockname;
@ -368,9 +362,7 @@ TRANS(SocketINETGetPeerAddr) (XtransConnInfo ciptr)
}
static XtransConnInfo
TRANS(SocketOpen) (int i, int type)
static XtransConnInfo _XSERVTransSocketOpen (int i, int type)
{
XtransConnInfo ciptr;
@ -449,9 +441,8 @@ TRANS(SocketOpen) (int i, int type)
return ciptr;
}
static XtransConnInfo
TRANS(SocketReopen) (int i _X_UNUSED, int type, int fd, const char *port)
static XtransConnInfo _XSERVTransSocketReopen (
int i _X_UNUSED, int type, int fd, const char *port)
{
XtransConnInfo ciptr;
int portlen;
@ -533,10 +524,8 @@ TRANS(SocketReopen) (int i _X_UNUSED, int type, int fd, const char *port)
* These functions are the interface supplied in the Xtransport structure
*/
static XtransConnInfo
TRANS(SocketOpenCOTSServer) (Xtransport *thistrans, const char *protocol,
const char *host, const char *port)
static XtransConnInfo _XSERVTransSocketOpenCOTSServer (
Xtransport *thistrans, const char *protocol, const char *host, const char *port)
{
XtransConnInfo ciptr = NULL;
int i = -1;
@ -545,8 +534,8 @@ TRANS(SocketOpenCOTSServer) (Xtransport *thistrans, const char *protocol,
SocketInitOnce();
while ((i = TRANS(SocketSelectFamily) (i, thistrans->TransName)) >= 0) {
if ((ciptr = TRANS(SocketOpen) (
while ((i = _XSERVTransSocketSelectFamily (i, thistrans->TransName)) >= 0) {
if ((ciptr = _XSERVTransSocketOpen (
i, Sockettrans2devtab[i].devcotsname)) != NULL)
break;
}
@ -602,9 +591,8 @@ TRANS(SocketOpenCOTSServer) (Xtransport *thistrans, const char *protocol,
return ciptr;
}
static XtransConnInfo
TRANS(SocketReopenCOTSServer) (Xtransport *thistrans, int fd, const char *port)
static XtransConnInfo _XSERVTransSocketReopenCOTSServer (
Xtransport *thistrans, int fd, const char *port)
{
XtransConnInfo ciptr;
int i = -1;
@ -614,8 +602,8 @@ TRANS(SocketReopenCOTSServer) (Xtransport *thistrans, int fd, const char *port)
SocketInitOnce();
while ((i = TRANS(SocketSelectFamily) (i, thistrans->TransName)) >= 0) {
if ((ciptr = TRANS(SocketReopen) (
while ((i = _XSERVTransSocketSelectFamily (i, thistrans->TransName)) >= 0) {
if ((ciptr = _XSERVTransSocketReopen (
i, Sockettrans2devtab[i].devcotsname, fd, port)) != NULL)
break;
}
@ -636,12 +624,9 @@ TRANS(SocketReopenCOTSServer) (Xtransport *thistrans, int fd, const char *port)
return ciptr;
}
static int
TRANS(SocketSetOption) (XtransConnInfo ciptr, int option, int arg)
static int _XSERVTransSocketSetOption (XtransConnInfo ciptr, int option, int arg)
{
prmsg (2,"SocketSetOption(%d,%d,%d)\n", ciptr->fd, option, arg);
return -1;
}
@ -673,11 +658,9 @@ set_sun_path(const char *port, const char *upath, char *path, int abstract)
}
#endif
static int
TRANS(SocketCreateListener) (XtransConnInfo ciptr,
static int _XSERVTransSocketCreateListener (XtransConnInfo ciptr,
struct sockaddr *sockname,
int socknamelen, unsigned int flags)
{
SOCKLEN_T namelen = socknamelen;
int fd = ciptr->fd;
@ -748,10 +731,8 @@ TRANS(SocketCreateListener) (XtransConnInfo ciptr,
}
#ifdef TCPCONN
static int
TRANS(SocketINETCreateListener) (XtransConnInfo ciptr, const char *port,
unsigned int flags)
static int _XSERVTransSocketINETCreateListener (
XtransConnInfo ciptr, const char *port, unsigned int flags)
{
#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
struct sockaddr_storage sockname;
@ -848,7 +829,7 @@ TRANS(SocketINETCreateListener) (XtransConnInfo ciptr, const char *port,
#endif
}
if ((status = TRANS(SocketCreateListener) (ciptr,
if ((status = _XSERVTransSocketCreateListener (ciptr,
(struct sockaddr *) &sockname, namelen, flags)) < 0)
{
prmsg (1,
@ -856,7 +837,7 @@ TRANS(SocketINETCreateListener) (XtransConnInfo ciptr, const char *port,
return status;
}
if (TRANS(SocketINETGetAddr) (ciptr) < 0)
if (_XSERVTransSocketINETGetAddr (ciptr) < 0)
{
prmsg (1,
"SocketINETCreateListener: ...SocketINETGetAddr() failed\n");
@ -871,10 +852,8 @@ TRANS(SocketINETCreateListener) (XtransConnInfo ciptr, const char *port,
#ifdef UNIXCONN
static int
TRANS(SocketUNIXCreateListener) (XtransConnInfo ciptr, const char *port,
unsigned int flags)
static int _XSERVTransSocketUNIXCreateListener (
XtransConnInfo ciptr, const char *port, unsigned int flags)
{
struct sockaddr_un sockname;
int namelen;
@ -938,7 +917,7 @@ TRANS(SocketUNIXCreateListener) (XtransConnInfo ciptr, const char *port,
else
unlink (sockname.sun_path);
if ((status = TRANS(SocketCreateListener) (ciptr,
if ((status = _XSERVTransSocketCreateListener (ciptr,
(struct sockaddr *) &sockname, namelen, flags)) < 0)
{
prmsg (1,
@ -951,7 +930,7 @@ TRANS(SocketUNIXCreateListener) (XtransConnInfo ciptr, const char *port,
* Now that the listener is esablished, create the addr info for
* this connection. getpeername() doesn't work for UNIX Domain Sockets
* on some systems (hpux at least), so we will just do it manually, instead
* of calling something like TRANS(SocketUNIXGetAddr).
* of calling something like _XSERVTransSocketUNIXGetAddr.
*/
namelen = sizeof (sockname); /* this will always make it the same size */
@ -977,9 +956,7 @@ TRANS(SocketUNIXCreateListener) (XtransConnInfo ciptr, const char *port,
}
static int
TRANS(SocketUNIXResetListener) (XtransConnInfo ciptr)
static int _XSERVTransSocketUNIXResetListener (XtransConnInfo ciptr)
{
/*
* See if the unix domain socket has disappeared. If it has, recreate it.
@ -1027,7 +1004,7 @@ TRANS(SocketUNIXResetListener) (XtransConnInfo ciptr)
if ((ciptr->fd = socket (AF_UNIX, SOCK_STREAM, 0)) < 0)
{
TRANS(FreeConnInfo) (ciptr);
_XSERVTransFreeConnInfo (ciptr);
(void) umask (oldUmask);
return TRANS_RESET_FAILURE;
}
@ -1035,14 +1012,14 @@ TRANS(SocketUNIXResetListener) (XtransConnInfo ciptr)
if (bind (ciptr->fd, (struct sockaddr *) unsock, ciptr->addrlen) < 0)
{
close (ciptr->fd);
TRANS(FreeConnInfo) (ciptr);
_XSERVTransFreeConnInfo (ciptr);
return TRANS_RESET_FAILURE;
}
if (listen (ciptr->fd, BACKLOG) < 0)
{
close (ciptr->fd);
TRANS(FreeConnInfo) (ciptr);
_XSERVTransFreeConnInfo (ciptr);
(void) umask (oldUmask);
return TRANS_RESET_FAILURE;
}
@ -1060,9 +1037,8 @@ TRANS(SocketUNIXResetListener) (XtransConnInfo ciptr)
#ifdef TCPCONN
static XtransConnInfo
TRANS(SocketINETAccept) (XtransConnInfo ciptr, int *status)
static XtransConnInfo _XSERVTransSocketINETAccept (
XtransConnInfo ciptr, int *status)
{
XtransConnInfo newciptr;
struct sockaddr_in sockname;
@ -1106,7 +1082,7 @@ TRANS(SocketINETAccept) (XtransConnInfo ciptr, int *status)
* specific address now that a connection is established.
*/
if (TRANS(SocketINETGetAddr) (newciptr) < 0)
if (_XSERVTransSocketINETGetAddr (newciptr) < 0)
{
prmsg (1,
"SocketINETAccept: ...SocketINETGetAddr() failed:\n");
@ -1116,7 +1092,7 @@ TRANS(SocketINETAccept) (XtransConnInfo ciptr, int *status)
return NULL;
}
if (TRANS(SocketINETGetPeerAddr) (newciptr) < 0)
if (_XSERVTransSocketINETGetPeerAddr (newciptr) < 0)
{
prmsg (1,
"SocketINETAccept: ...SocketINETGetPeerAddr() failed:\n");
@ -1136,9 +1112,8 @@ TRANS(SocketINETAccept) (XtransConnInfo ciptr, int *status)
#ifdef UNIXCONN
static XtransConnInfo
TRANS(SocketUNIXAccept) (XtransConnInfo ciptr, int *status)
static XtransConnInfo _XSERVTransSocketUNIXAccept (
XtransConnInfo ciptr, int *status)
{
XtransConnInfo newciptr;
struct sockaddr_un sockname;
@ -1209,9 +1184,8 @@ TRANS(SocketUNIXAccept) (XtransConnInfo ciptr, int *status)
#endif /* UNIXCONN */
static int
TRANS(SocketBytesReadable) (XtransConnInfo ciptr, BytesReadable_t *pend)
static int _XSERVTransSocketBytesReadable (
XtransConnInfo ciptr, BytesReadable_t *pend)
{
prmsg (2,"SocketBytesReadable(%p,%d,%p)\n",
(void *) ciptr, ciptr->fd, (void *) pend);
@ -1296,29 +1270,27 @@ nFd(struct _XtransConnFd **prev)
return n;
}
static int
TRANS(SocketRecvFd) (XtransConnInfo ciptr)
static int _XSERVTransSocketRecvFd (XtransConnInfo ciptr)
{
prmsg (2, "SocketRecvFd(%d)\n", ciptr->fd);
return removeFd(&ciptr->recv_fds);
}
static int
TRANS(SocketSendFd) (XtransConnInfo ciptr, int fd, int do_close)
static int _XSERVTransSocketSendFd (
XtransConnInfo ciptr, int fd, int do_close)
{
appendFd(&ciptr->send_fds, fd, do_close);
return 0;
}
static int
TRANS(SocketRecvFdInvalid)(XtransConnInfo ciptr)
static int _XSERVTransSocketRecvFdInvalid(XtransConnInfo ciptr)
{
errno = EINVAL;
return -1;
}
static int
TRANS(SocketSendFdInvalid)(XtransConnInfo ciptr, int fd, int do_close)
static int _XSERVTransSocketSendFdInvalid(
XtransConnInfo ciptr, int fd, int do_close)
{
errno = EINVAL;
return -1;
@ -1333,9 +1305,8 @@ union fd_pass {
#endif /* XTRANS_SEND_FDS */
static int
TRANS(SocketRead) (XtransConnInfo ciptr, char *buf, int size)
static int _XSERVTransSocketRead (
XtransConnInfo ciptr, char *buf, int size)
{
prmsg (2,"SocketRead(%d,%p,%d)\n", ciptr->fd, (void *) buf, size);
@ -1387,9 +1358,8 @@ TRANS(SocketRead) (XtransConnInfo ciptr, char *buf, int size)
#endif /* WIN32 */
}
static int
TRANS(SocketReadv) (XtransConnInfo ciptr, struct iovec *buf, int size)
static int _XSERVTransSocketReadv (
XtransConnInfo ciptr, struct iovec *buf, int size)
{
prmsg (2,"SocketReadv(%d,%p,%d)\n", ciptr->fd, (void *) buf, size);
@ -1427,10 +1397,8 @@ TRANS(SocketReadv) (XtransConnInfo ciptr, struct iovec *buf, int size)
#endif
}
static int
TRANS(SocketWritev) (XtransConnInfo ciptr, struct iovec *buf, int size)
static int _XSERVTransSocketWritev (
XtransConnInfo ciptr, struct iovec *buf, int size)
{
prmsg (2,"SocketWritev(%d,%p,%d)\n", ciptr->fd, (void *) buf, size);
@ -1472,10 +1440,8 @@ TRANS(SocketWritev) (XtransConnInfo ciptr, struct iovec *buf, int size)
return WRITEV (ciptr, buf, size);
}
static int
TRANS(SocketWrite) (XtransConnInfo ciptr, const char *buf, int size)
static int _XSERVTransSocketWrite (
XtransConnInfo ciptr, const char *buf, int size)
{
prmsg (2,"SocketWrite(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size);
@ -1495,16 +1461,14 @@ TRANS(SocketWrite) (XtransConnInfo ciptr, const char *buf, int size)
iov.iov_base = (void *) buf;
iov.iov_len = size;
return TRANS(SocketWritev)(ciptr, &iov, 1);
return _XSERVTransSocketWritev(ciptr, &iov, 1);
}
#endif /* XTRANS_SEND_FDS */
return write (ciptr->fd, buf, size);
#endif /* WIN32 */
}
static int
TRANS(SocketDisconnect) (XtransConnInfo ciptr)
static int _XSERVTransSocketDisconnect (XtransConnInfo ciptr)
{
prmsg (2,"SocketDisconnect(%p,%d)\n", (void *) ciptr, ciptr->fd);
@ -1519,11 +1483,8 @@ TRANS(SocketDisconnect) (XtransConnInfo ciptr)
#endif
}
#ifdef TCPCONN
static int
TRANS(SocketINETClose) (XtransConnInfo ciptr)
static int _XSERVTransSocketINETClose (XtransConnInfo ciptr)
{
prmsg (2,"SocketINETClose(%p,%d)\n", (void *) ciptr, ciptr->fd);
@ -1540,10 +1501,8 @@ TRANS(SocketINETClose) (XtransConnInfo ciptr)
#endif /* TCPCONN */
#ifdef UNIXCONN
static int
TRANS(SocketUNIXClose) (XtransConnInfo ciptr)
static int _XSERVTransSocketUNIXClose (XtransConnInfo ciptr)
{
/*
* If this is the server side, then once the socket is closed,
@ -1573,9 +1532,7 @@ TRANS(SocketUNIXClose) (XtransConnInfo ciptr)
return ret;
}
static int
TRANS(SocketUNIXCloseForCloning) (XtransConnInfo ciptr)
static int _XSERVTransSocketUNIXCloseForCloning (XtransConnInfo ciptr)
{
/*
* Don't unlink path.
@ -1606,87 +1563,87 @@ static const char* tcp_nolisten[] = {
NULL
};
static Xtransport TRANS(SocketTCPFuncs) = {
static Xtransport _XSERVTransSocketTCPFuncs = {
/* Socket Interface */
"tcp",
TRANS_ALIAS,
tcp_nolisten,
TRANS(SocketOpenCOTSServer),
TRANS(SocketReopenCOTSServer),
TRANS(SocketSetOption),
TRANS(SocketINETCreateListener),
_XSERVTransSocketOpenCOTSServer,
_XSERVTransSocketReopenCOTSServer,
_XSERVTransSocketSetOption,
_XSERVTransSocketINETCreateListener,
NULL, /* ResetListener */
TRANS(SocketINETAccept),
TRANS(SocketBytesReadable),
TRANS(SocketRead),
TRANS(SocketWrite),
TRANS(SocketReadv),
TRANS(SocketWritev),
_XSERVTransSocketINETAccept,
_XSERVTransSocketBytesReadable,
_XSERVTransSocketRead,
_XSERVTransSocketWrite,
_XSERVTransSocketReadv,
_XSERVTransSocketWritev,
#if XTRANS_SEND_FDS
TRANS(SocketSendFdInvalid),
TRANS(SocketRecvFdInvalid),
_XSERVTransSocketSendFdInvalid,
_XSERVTransSocketRecvFdInvalid,
#endif
TRANS(SocketDisconnect),
TRANS(SocketINETClose),
TRANS(SocketINETClose),
};
_XSERVTransSocketDisconnect,
_XSERVTransSocketINETClose,
_XSERVTransSocketINETClose,
};
static Xtransport TRANS(SocketINETFuncs) = {
static Xtransport _XSERVTransSocketINETFuncs = {
/* Socket Interface */
"inet",
0,
NULL,
TRANS(SocketOpenCOTSServer),
TRANS(SocketReopenCOTSServer),
TRANS(SocketSetOption),
TRANS(SocketINETCreateListener),
_XSERVTransSocketOpenCOTSServer,
_XSERVTransSocketReopenCOTSServer,
_XSERVTransSocketSetOption,
_XSERVTransSocketINETCreateListener,
NULL, /* ResetListener */
TRANS(SocketINETAccept),
TRANS(SocketBytesReadable),
TRANS(SocketRead),
TRANS(SocketWrite),
TRANS(SocketReadv),
TRANS(SocketWritev),
_XSERVTransSocketINETAccept,
_XSERVTransSocketBytesReadable,
_XSERVTransSocketRead,
_XSERVTransSocketWrite,
_XSERVTransSocketReadv,
_XSERVTransSocketWritev,
#if XTRANS_SEND_FDS
TRANS(SocketSendFdInvalid),
TRANS(SocketRecvFdInvalid),
_XSERVTransSocketSendFdInvalid,
_XSERVTransSocketRecvFdInvalid,
#endif
TRANS(SocketDisconnect),
TRANS(SocketINETClose),
TRANS(SocketINETClose),
};
_XSERVTransSocketDisconnect,
_XSERVTransSocketINETClose,
_XSERVTransSocketINETClose,
};
#ifdef IPv6
static Xtransport TRANS(SocketINET6Funcs) = {
static Xtransport _XSERVTransSocketINET6Funcs = {
/* Socket Interface */
"inet6",
0,
NULL,
TRANS(SocketOpenCOTSServer),
TRANS(SocketReopenCOTSServer),
TRANS(SocketSetOption),
TRANS(SocketINETCreateListener),
_XSERVTransSocketOpenCOTSServer,
_XSERVTransSocketReopenCOTSServer,
_XSERVTransSocketSetOption,
_XSERVTransSocketINETCreateListener,
NULL, /* ResetListener */
TRANS(SocketINETAccept),
TRANS(SocketBytesReadable),
TRANS(SocketRead),
TRANS(SocketWrite),
TRANS(SocketReadv),
TRANS(SocketWritev),
_XSERVTransSocketINETAccept,
_XSERVTransSocketBytesReadable,
_XSERVTransSocketRead,
_XSERVTransSocketWrite,
_XSERVTransSocketReadv,
_XSERVTransSocketWritev,
#if XTRANS_SEND_FDS
TRANS(SocketSendFdInvalid),
TRANS(SocketRecvFdInvalid),
_XSERVTransSocketSendFdInvalid,
_XSERVTransSocketRecvFdInvalid,
#endif
TRANS(SocketDisconnect),
TRANS(SocketINETClose),
TRANS(SocketINETClose),
};
_XSERVTransSocketDisconnect,
_XSERVTransSocketINETClose,
_XSERVTransSocketINETClose,
};
#endif /* IPv6 */
#endif /* TCPCONN */
#ifdef UNIXCONN
#if !defined(LOCALCONN)
static Xtransport TRANS(SocketLocalFuncs) = {
static Xtransport _XSERVTransSocketLocalFuncs = {
/* Socket Interface */
"local",
#ifdef HAVE_ABSTRACT_SOCKETS
@ -1695,31 +1652,31 @@ static Xtransport TRANS(SocketLocalFuncs) = {
0,
#endif
NULL,
TRANS(SocketOpenCOTSServer),
TRANS(SocketReopenCOTSServer),
TRANS(SocketSetOption),
TRANS(SocketUNIXCreateListener),
TRANS(SocketUNIXResetListener),
TRANS(SocketUNIXAccept),
TRANS(SocketBytesReadable),
TRANS(SocketRead),
TRANS(SocketWrite),
TRANS(SocketReadv),
TRANS(SocketWritev),
_XSERVTransSocketOpenCOTSServer,
_XSERVTransSocketReopenCOTSServer,
_XSERVTransSocketSetOption,
_XSERVTransSocketUNIXCreateListener,
_XSERVTransSocketUNIXResetListener,
_XSERVTransSocketUNIXAccept,
_XSERVTransSocketBytesReadable,
_XSERVTransSocketRead,
_XSERVTransSocketWrite,
_XSERVTransSocketReadv,
_XSERVTransSocketWritev,
#if XTRANS_SEND_FDS
TRANS(SocketSendFd),
TRANS(SocketRecvFd),
_XSERVTransSocketSendFd,
_XSERVTransSocketRecvFd,
#endif
TRANS(SocketDisconnect),
TRANS(SocketUNIXClose),
TRANS(SocketUNIXCloseForCloning),
};
_XSERVTransSocketDisconnect,
_XSERVTransSocketUNIXClose,
_XSERVTransSocketUNIXCloseForCloning,
};
#endif /* !LOCALCONN */
# if !defined(LOCALCONN)
static const char* unix_nolisten[] = { "local" , NULL };
# endif
static Xtransport TRANS(SocketUNIXFuncs) = {
static Xtransport _XSERVTransSocketUNIXFuncs = {
/* Socket Interface */
"unix",
#if !defined(LOCALCONN) && !defined(HAVE_ABSTRACT_SOCKETS)
@ -1732,24 +1689,24 @@ static Xtransport TRANS(SocketUNIXFuncs) = {
#else
NULL,
#endif
TRANS(SocketOpenCOTSServer),
TRANS(SocketReopenCOTSServer),
TRANS(SocketSetOption),
TRANS(SocketUNIXCreateListener),
TRANS(SocketUNIXResetListener),
TRANS(SocketUNIXAccept),
TRANS(SocketBytesReadable),
TRANS(SocketRead),
TRANS(SocketWrite),
TRANS(SocketReadv),
TRANS(SocketWritev),
_XSERVTransSocketOpenCOTSServer,
_XSERVTransSocketReopenCOTSServer,
_XSERVTransSocketSetOption,
_XSERVTransSocketUNIXCreateListener,
_XSERVTransSocketUNIXResetListener,
_XSERVTransSocketUNIXAccept,
_XSERVTransSocketBytesReadable,
_XSERVTransSocketRead,
_XSERVTransSocketWrite,
_XSERVTransSocketReadv,
_XSERVTransSocketWritev,
#if XTRANS_SEND_FDS
TRANS(SocketSendFd),
TRANS(SocketRecvFd),
_XSERVTransSocketSendFd,
_XSERVTransSocketRecvFd,
#endif
TRANS(SocketDisconnect),
TRANS(SocketUNIXClose),
TRANS(SocketUNIXCloseForCloning),
};
_XSERVTransSocketDisconnect,
_XSERVTransSocketUNIXClose,
_XSERVTransSocketUNIXCloseForCloning,
};
#endif /* UNIXCONN */

View File

@ -89,16 +89,13 @@ from The Open Group.
#define FamilyWild 65535
/*
* TRANS(ConvertAddress) converts a sockaddr based address to an
* _XSERVTransConvertAddress converts a sockaddr based address to an
* X authorization based address. Some of this is defined as part of
* the ChangeHost protocol. The rest is just done in a consistent manner.
*/
int
TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp)
int _XSERVTransConvertAddress(int *familyp, int *addrlenp, Xtransaddr **addrp)
{
prmsg(2,"ConvertAddress(%d,%d,%p)\n",*familyp,*addrlenp,*addrp);
switch( *familyp )
@ -193,7 +190,7 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp)
*/
char hostnamebuf[256];
int len = TRANS(GetHostname) (hostnamebuf, sizeof hostnamebuf);
int len = _XSERVTransGetHostname (hostnamebuf, sizeof hostnamebuf);
if (len > 0) {
if (*addrp && *addrlenp < (len + 1))
@ -223,8 +220,7 @@ TRANS(ConvertAddress)(int *familyp, int *addrlenp, Xtransaddr **addrp)
}
#if defined(WIN32) && defined(TCPCONN)
int
TRANS(WSAStartup) (void)
int _XSERVTransWSAStartup (void)
{
static WSADATA wsadata;

View File

@ -1058,7 +1058,7 @@ ListenOnOpenFD(int fd, int noxauth)
ListenTransCount++;
}
/* based on TRANS(SocketUNIXAccept) (XtransConnInfo ciptr, int *status) */
/* based on _XSERVTransSocketUNIXAccept (XtransConnInfo ciptr, int *status) */
Bool
AddClientOnOpenFD(int fd)
{