Internal: renamed xioopts_t to xioparms_t

This commit is contained in:
Gerhard Rieger 2023-06-23 16:21:05 +02:00
parent eeabf31e04
commit 3e282ee7a0
14 changed files with 58 additions and 56 deletions

View file

@ -39,6 +39,8 @@ Coding:
socketpair. SIGUSR1 is no longer used for internal synchronization.
Tests: UDP4_FORK UDP6_FORK UNIX_FORK
Renamed xioopts_t to xioparms_t to avoid confusion with xioopts module.
####################### V 1.7.4.5 (not released):
Corrections:

12
socat.c
View file

@ -325,13 +325,13 @@ int main(int argc, const char *argv[]) {
case '6':
#endif
if (arg1[0][2]) { socat_opt_hint(stderr, arg1[0][1], arg1[0][2]); Exit(1); }
xioopts.default_ip = arg1[0][1];
xioopts.preferred_ip = arg1[0][1];
xioparms.default_ip = arg1[0][1];
xioparms.preferred_ip = arg1[0][1];
break;
#endif /* WITH_IP4 || WITH_IP6 */
case '-':
if (!strcmp("experimental", &arg1[0][2])) {
xioopts.experimental = true;
xioparms.experimental = true;
} else {
Error1("unknown option \"%s\"; use option \"-h\" for help", arg1[0]);
}
@ -431,8 +431,8 @@ void socat_usage(FILE *fd) {
fputs(" -hh like -h, plus a list of all common address option names\n", fd);
fputs(" -hhh like -hh, plus a list of all available address option names\n", fd);
#endif /* WITH_HELP */
fputs(" -d[ddd] increase verbosity (use up to 4 times; 2 are recommended)\n", fd);
fputs(" -d0|1|2|3|4 set verbosity level (0: Errors; 4 all including Debug)\n", fd);
fputs(" -d[ddd] increase verbosity (use up to 4 times; 2 are recommended)\n", fd);
fputs(" -d0|1|2|3|4 set verbosity level (0: Errors; 4 all including Debug)\n", fd);
#if WITH_FILAN
fputs(" -D analyze file descriptors before loop\n", fd);
#endif
@ -913,7 +913,7 @@ int _socat(void) {
if (socat_opts.logopt == 'm' && xioinqopt('l', NULL, 0) == 'm') {
Info("switching to syslog");
diag_set('y', xioopts.syslogfac);
diag_set('y', xioparms.syslogfac);
xiosetopt('l', "\0");
}
total_timeout = socat_opts.total_timeout;

View file

@ -273,13 +273,13 @@ int xiogetaddrinfo(const char *node, const char *service,
service = NULL; /* do not resolve later again */
record = res;
if (family == PF_UNSPEC && xioopts.preferred_ip == '0') {
if (family == PF_UNSPEC && xioparms.preferred_ip == '0') {
/* we just take the first result */
family = res[0].ai_addr->sa_family;
}
if (family == PF_UNSPEC) {
int trypf;
trypf = (xioopts.preferred_ip=='6'?PF_INET6:PF_INET);
trypf = (xioparms.preferred_ip=='6'?PF_INET6:PF_INET);
/* we must look for a matching entry */
while (record != NULL) {
if (record->ai_family == trypf) {
@ -339,7 +339,7 @@ int xiogetaddrinfo(const char *node, const char *service,
/* first fallback is getipnodebyname() */
if (family == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
family = xioopts.default_ip=='6'?PF_INET6:PF_INET;
family = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
family = PF_INET6;
#else
@ -390,7 +390,7 @@ int xiogetaddrinfo(const char *node, const char *service,
be useful somewhere sometimes in a future even for IP6 */
if (family == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
family = xioopts.default_ip=='6'?PF_INET6:PF_INET;
family = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
family = PF_INET6;
#else

View file

@ -61,9 +61,9 @@ int xioopen_ipapp_connect(int argc, const char *argv[], struct opt *opts,
xiosetchilddied(); /* set SIGCHLD handler */
}
if (xioopts.logopt == 'm') {
if (xioparms.logopt == 'm') {
Info("starting connect loop, switching to syslog");
diag_set('y', xioopts.syslogfac); xioopts.logopt = 'y';
diag_set('y', xioparms.syslogfac); xioparms.logopt = 'y';
} else {
Info("starting connect loop");
}
@ -271,7 +271,7 @@ int xioopen_ipapp_listen(int argc, const char *argv[], struct opt *opts,
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else

View file

@ -224,9 +224,9 @@ int _xioopen_listen(struct single *xfd, int xioflags, struct sockaddr *us, sockl
return STAT_RETRYLATER;
}
if (xioopts.logopt == 'm') {
if (xioparms.logopt == 'm') {
Info("starting accept loop, switching to syslog");
diag_set('y', xioopts.syslogfac); xioopts.logopt = 'y';
diag_set('y', xioparms.syslogfac); xioparms.logopt = 'y';
} else {
Info("starting accept loop");
}

View file

@ -301,9 +301,9 @@ static int
&needbind, &lowport, socktype);
if (result != STAT_OK) return STAT_NORETRY;
if (xioopts.logopt == 'm') {
if (xioparms.logopt == 'm') {
Info("starting connect loop, switching to syslog");
diag_set('y', xioopts.syslogfac); xioopts.logopt = 'y';
diag_set('y', xioparms.syslogfac); xioparms.logopt = 'y';
} else {
Info("starting connect loop");
}
@ -524,7 +524,7 @@ static int
}
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else

View file

@ -226,7 +226,7 @@ int xioopen_rawip_recvfrom(int argc, const char *argv[], struct opt *opts,
retropt_socket_pf(opts, &pf);
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else
@ -283,7 +283,7 @@ int xioopen_rawip_recv(int argc, const char *argv[], struct opt *opts,
retropt_socket_pf(opts, &pf);
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else

View file

@ -1171,9 +1171,9 @@ int _xioopen_dgram_recvfrom(struct single *xfd, int xioflags,
xio_retropt_tcpwrap(xfd, opts);
#endif /* && (WITH_TCP || WITH_UDP) && WITH_LIBWRAP */
if (xioopts.logopt == 'm') {
if (xioparms.logopt == 'm') {
Info("starting recvfrom loop, switching to syslog");
diag_set('y', xioopts.syslogfac); xioopts.logopt = 'y';
diag_set('y', xioparms.syslogfac); xioparms.logopt = 'y';
} else {
Info("starting recvfrom loop");
}
@ -1375,9 +1375,9 @@ int _xioopen_dgram_recv(struct single *xfd, int xioflags,
xio_retropt_tcpwrap(xfd, opts);
#endif /* && (WITH_TCP || WITH_UDP) && WITH_LIBWRAP */
if (xioopts.logopt == 'm') {
if (xioparms.logopt == 'm') {
Info("starting recvfrom loop, switching to syslog");
diag_set('y', xioopts.syslogfac); xioopts.logopt = 'y';
diag_set('y', xioparms.syslogfac); xioparms.logopt = 'y';
} else {
Info("starting recvfrom loop");
}

View file

@ -290,7 +290,7 @@ int xioopen_ipdgram_listen(int argc, const char *argv[], struct opt *opts,
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else
@ -500,7 +500,7 @@ int xioopen_udp_recvfrom(int argc, const char *argv[], struct opt *opts,
retropt_socket_pf(opts, &pf);
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else
@ -573,7 +573,7 @@ int xioopen_udp_recv(int argc, const char *argv[], struct opt *opts,
retropt_socket_pf(opts, &pf);
if (pf == PF_UNSPEC) {
#if WITH_IP4 && WITH_IP6
pf = xioopts.default_ip=='6'?PF_INET6:PF_INET;
pf = xioparms.default_ip=='6'?PF_INET6:PF_INET;
#elif WITH_IP6
pf = PF_INET6;
#else

4
xio.h
View file

@ -112,7 +112,7 @@ typedef struct {
char preferred_ip; /* preferred prot.fam. for name resolution ('0' for
unspecified, '4', or '6') */
bool experimental; /* enable some features */
} xioopts_t;
} xioparms_t;
/* pack the description of a lock file */
typedef struct {
@ -121,7 +121,7 @@ typedef struct {
struct timespec intervall; /* polling intervall */
} xiolock_t;
extern xioopts_t xioopts;
extern xioparms_t xioparms;
#define MAXARGV 8

View file

@ -76,7 +76,7 @@ int xioinitialize(void) {
switch (default_ip[0]) {
case '4':
case '6':
xioopts.default_ip = default_ip[0]; break;
xioparms.default_ip = default_ip[0]; break;
}
}
}
@ -87,9 +87,9 @@ int xioinitialize(void) {
switch (preferred_ip[0]) {
case '4':
case '6':
xioopts.preferred_ip = preferred_ip[0]; break;
xioparms.preferred_ip = preferred_ip[0]; break;
default:
xioopts.preferred_ip = '0'; break;
xioparms.preferred_ip = '0'; break;
}
}
}

View file

@ -421,9 +421,9 @@ static xiofile_t *xioparse_dual(const char **addr) {
}
/* and now we see if we reached a dual-address separator */
if (!strncmp(*addr, xioopts.pipesep, strlen(xioopts.pipesep))) {
if (!strncmp(*addr, xioparms.pipesep, strlen(xioparms.pipesep))) {
/* yes we reached it, so we parse the second single address */
*addr += strlen(xioopts.pipesep);
*addr += strlen(xioparms.pipesep);
if ((xfd = xioallocfd()) == NULL) {
free(sfd1); /*! and maybe have free some if its contents */
@ -500,10 +500,10 @@ static xiosingle_t *xioparse_single(const char **addr) {
/* init */
i = 0;
/*ends[i++] = xioopts.chainsep;*/ /* default: "|" */
ends[i++] = xioopts.pipesep; /* default: "!!" */
ends[i++] = ","/*xioopts.comma*/; /* default: "," */
ends[i++] = ":"/*xioopts.colon*/; /* default: ":" */
/*ends[i++] = xioparms.chainsep;*/ /* default: "|" */
ends[i++] = xioparms.pipesep; /* default: "!!" */
ends[i++] = ","/*xioparms.comma*/; /* default: "," */
ends[i++] = ":"/*xioparms.colon*/; /* default: ":" */
ends[i++] = NULL;
if ((xfd = xioallocfd()) == NULL) {
@ -567,8 +567,8 @@ static xiosingle_t *xioparse_single(const char **addr) {
sfd->tag = XIO_TAG_RDWR;
sfd->addr = addrdesc;
while (!strncmp(*addr, xioopts.paramsep, strlen(xioopts.paramsep))) {
*addr += strlen(xioopts.paramsep);
while (!strncmp(*addr, xioparms.paramsep, strlen(xioparms.paramsep))) {
*addr += strlen(xioparms.paramsep);
len = sizeof(token); tokp = token;
result = nestlex(addr, &tokp, &len, ends, hquotes, squotes, nests,
true, true, false);

View file

@ -1890,16 +1890,16 @@ int parseopts_table(const char **a, groups_t groups, struct opt **opts,
} ;
i = 0;
/*endkey[i++] = xioopts.chainsep;*/ /* default: "|" */
endkey[i++] = xioopts.pipesep; /* default: "!!" */
endkey[i++] = ","/*xioopts.comma*/; /* default: "," */
/*endkey[i++] = xioparms.chainsep;*/ /* default: "|" */
endkey[i++] = xioparms.pipesep; /* default: "!!" */
endkey[i++] = ","/*xioparms.comma*/; /* default: "," */
endkey[i++] = "=";
endkey[i++] = NULL;
i = 0;
/*endval[i++] = xioopts.chainsep;*/ /* default: "|" */
endval[i++] = xioopts.pipesep; /* default: "!!" */
endval[i++] = ","/*xioopts.comma*/; /* default: "," */
/*endval[i++] = xioparms.chainsep;*/ /* default: "|" */
endval[i++] = xioparms.pipesep; /* default: "!!" */
endval[i++] = ","/*xioparms.comma*/; /* default: "," */
endval[i++] = NULL;
i = 0;

View file

@ -10,7 +10,7 @@
/*#include "xioparam.h" are all in xio.h */
/* options that can be applied to this module */
xioopts_t xioopts = {
xioparms_t xioparms = {
false, /* strictopts */
"!!", /* pipesep */
":", /* paramsep */
@ -28,21 +28,21 @@ xioopts_t xioopts = {
/* allow application to set xioopen options */
int xiosetopt(char what, const char *arg) {
switch (what) {
case 's': xioopts.strictopts = true; break;
case 'p': if ((xioopts.pipesep = strdup(arg)) == NULL) {
case 's': xioparms.strictopts = true; break;
case 'p': if ((xioparms.pipesep = strdup(arg)) == NULL) {
Error1("strdup("F_Zu"): out of memory", strlen(arg)+1);
return -1;
}
break;
case 'o': xioopts.ip4portsep = arg[0];
case 'o': xioparms.ip4portsep = arg[0];
if (arg[1] != '\0') {
Error2("xiosetopt('%c', \"%s\"): port separator must be single character",
what, arg);
return -1;
}
break;
case 'l': xioopts.logopt = *arg; break;
case 'y': xioopts.syslogfac = arg; break;
case 'l': xioparms.logopt = *arg; break;
case 'y': xioparms.syslogfac = arg; break;
default:
Error2("xiosetopt('%c', \"%s\"): unknown option",
what, arg?arg:"NULL");
@ -54,12 +54,12 @@ int xiosetopt(char what, const char *arg) {
int xioinqopt(char what, char *arg, size_t n) {
switch (what) {
case 's': return xioopts.strictopts;
case 's': return xioparms.strictopts;
case 'p':
arg[0] = '\0'; strncat(arg, xioopts.pipesep, n-1);
arg[0] = '\0'; strncat(arg, xioparms.pipesep, n-1);
return 0;
case 'o': return xioopts.ip4portsep;
case 'l': return xioopts.logopt;
case 'o': return xioparms.ip4portsep;
case 'l': return xioparms.logopt;
default:
Error3("xioinqopt('%c', \"%s\", "F_Zu"): unknown option",
what, arg, n);