1
0
Fork 0
mirror of https://repo.or.cz/socat.git synced 2025-07-27 13:02:57 +00:00

merged features ancillary, envvar

This commit is contained in:
Gerhard Rieger 2008-09-22 22:17:55 +02:00
parent bd3810642b
commit 2ffe5a324e
42 changed files with 1898 additions and 287 deletions

View file

@ -165,6 +165,9 @@ const struct optname optionnames[] = {
#ifdef SO_AUDIT /* AIX 4.3.3 */
IF_SOCKET ("audit", &opt_so_audit)
#endif /* SO_AUDIT */
#ifdef IPV6_AUTHHDR
IF_IP6 ("authhdr", &opt_ipv6_authhdr)
#endif
IF_TUN ("automedia", &opt_iff_automedia)
#ifdef CBAUD
IF_TERMIOS("b0", &opt_b0)
@ -375,6 +378,7 @@ const struct optname optionnames[] = {
IF_SOCKET ("dontlinger", &opt_so_dontlinger)
#endif
IF_SOCKET ("dontroute", &opt_so_dontroute)
IF_IP6 ("dstopts", &opt_ipv6_dstopts)
#ifdef VDSUSP /* HP-UX */
IF_TERMIOS("dsusp", &opt_vdsusp)
#endif
@ -501,6 +505,9 @@ const struct optname optionnames[] = {
IF_ANY ("flock-nb", &opt_flock_ex_nb)
IF_ANY ("flock-sh", &opt_flock_sh)
IF_ANY ("flock-sh-nb", &opt_flock_sh_nb)
#endif
#ifdef IPV4_FLOWINFO
IF_IP6 ("flowinfo", &opt_ipv6_flowinfo)
#endif
IF_TERMIOS("flusho", &opt_flusho)
IF_RETRY ("forever", &opt_forever)
@ -528,6 +535,8 @@ const struct optname optionnames[] = {
#endif
IF_READLINE("history", &opt_history_file)
IF_READLINE("history-file", &opt_history_file)
IF_IP6 ("hoplimit", &opt_ipv6_hoplimit)
IF_IP6 ("hopopts", &opt_ipv6_hopopts)
#if WITH_LIBWRAP && defined(HAVE_HOSTS_ALLOW_TABLE)
IF_IPAPP ("hosts-allow", &opt_tcpwrap_hosts_allow_table)
#endif
@ -614,9 +623,15 @@ const struct optname optionnames[] = {
#ifdef IP_PKTOPTIONS
IF_IP ("ip-pktoptions", &opt_ip_pktoptions)
#endif
#ifdef IP_RECVDSTADDR
IF_IP ("ip-recvdstaddr", &opt_ip_recvdstaddr)
#endif
#ifdef IP_RECVERR
IF_IP ("ip-recverr", &opt_ip_recverr)
#endif
#ifdef IP_RECVIF
IF_IP ("ip-recvif", &opt_ip_recvif)
#endif
#ifdef IP_RECVOPTS
IF_IP ("ip-recvopts", &opt_ip_recvopts)
#endif
@ -657,6 +672,9 @@ const struct optname optionnames[] = {
#ifdef IP_PKTOPTIONS
IF_IP ("ippktoptions", &opt_ip_pktoptions)
#endif
#ifdef IP_RECVDSTADDR
IF_IP ("iprecvdstaddr", &opt_ip_recvdstaddr)
#endif
#ifdef IP_RECVERR
IF_IP ("iprecverr", &opt_ip_recverr)
#endif
@ -678,7 +696,32 @@ const struct optname optionnames[] = {
IF_IP ("iptos", &opt_ip_tos)
IF_IP ("ipttl", &opt_ip_ttl)
IF_IP6 ("ipv6-add-membership", &opt_ipv6_join_group)
#ifdef IPV6_AUTHHDR
IF_IP6 ("ipv6-authhdr", &opt_ipv6_authhdr)
#endif
IF_IP6 ("ipv6-dstopts", &opt_ipv6_dstopts)
#ifdef IPV4_FLOWINFO
IF_IP6 ("ipv6-flowinfo", &opt_ipv6_flowinfo)
#endif
IF_IP6 ("ipv6-hoplimit", &opt_ipv6_hoplimit)
IF_IP6 ("ipv6-hopopts", &opt_ipv6_hopopts)
IF_IP6 ("ipv6-join-group", &opt_ipv6_join_group)
IF_IP6 ("ipv6-pktinfo", &opt_ipv6_pktinfo)
IF_IP6 ("ipv6-recvdstopts", &opt_ipv6_recvdstopts)
#ifdef IPV6_RECVERR
IF_IP6 ("ipv6-recverr", &opt_ipv6_recverr)
#endif
IF_IP6 ("ipv6-recvhoplimit", &opt_ipv6_recvhoplimit)
IF_IP6 ("ipv6-recvhopopts", &opt_ipv6_recvhopopts)
#ifdef IPV6_PATHMTU
IF_IP6 ("ipv6-recvpathmtu", &opt_ipv6_recvpathmtu)
#endif
IF_IP6 ("ipv6-recvpktinfo", &opt_ipv6_recvpktinfo)
IF_IP6 ("ipv6-recvrthdr", &opt_ipv6_recvrthdr)
IF_IP6 ("ipv6-recvtclass", &opt_ipv6_recvtclass)
IF_IP6 ("ipv6-rthdr", &opt_ipv6_rthdr)
IF_IP6 ("ipv6-tclass", &opt_ipv6_tclass)
IF_IP6 ("ipv6-unicast-hops", &opt_ipv6_unicast_hops)
#ifdef IPV6_V6ONLY
IF_IP6 ("ipv6-v6only", &opt_ipv6_v6only)
IF_IP6 ("ipv6only", &opt_ipv6_v6only)
@ -1087,12 +1130,23 @@ const struct optname optionnames[] = {
#if HAVE_RESOLV_H
IF_IP ("recurse", &opt_res_recurse)
#endif /* HAVE_RESOLV_H */
#ifdef IP_RECVDSTADDR
IF_IP ("recvdstaddr", &opt_ip_recvdstaddr)
#endif
IF_IP6 ("recvdstopts", &opt_ipv6_recvdstopts)
#ifdef IP_RECVERR
IF_IP ("recverr", &opt_ip_recverr)
#endif
IF_IP6 ("recvhoplimit", &opt_ipv6_recvhoplimit)
IF_IP6 ("recvhopopts", &opt_ipv6_recvhopopts)
#ifdef IP_RECVIF
IF_IP ("recvif", &opt_ip_recvif)
#endif
#ifdef IP_RECVOPTS
IF_IP ("recvopts", &opt_ip_recvopts)
#endif
IF_IP6 ("recvpktinfo", &opt_ipv6_recvpktinfo)
IF_IP6 ("recvrthdr", &opt_ipv6_recvrthdr)
#ifdef IP_RECVTOS
IF_IP ("recvtos", &opt_ip_recvtos)
#endif
@ -1139,6 +1193,7 @@ const struct optname optionnames[] = {
#ifdef O_RSYNC
IF_OPEN ("rsync", &opt_o_rsync)
#endif
IF_IP6 ("rthdr", &opt_ipv6_rthdr)
IF_TUN ("running", &opt_iff_running)
#ifdef TCP_SACK_DISABLE
IF_TCP ("sack-disable", &opt_tcp_sack_disable)
@ -1297,6 +1352,9 @@ const struct optname optionnames[] = {
#endif
#ifdef SO_SNDTIMEO
IF_SOCKET ("so-sndtimeo", &opt_so_sndtimeo)
#endif
#ifdef SO_TIMESTAMP
IF_SOCKET ("so-timestamp", &opt_so_timestamp)
#endif
IF_SOCKET ("so-type", &opt_so_type)
#ifdef SO_USE_IFBUFS
@ -1446,6 +1504,9 @@ const struct optname optionnames[] = {
#endif
IF_UNIX ("tightsocklen", &opt_unix_tightsocklen)
IF_TERMIOS("time", &opt_vtime)
#ifdef SO_TIMESTAMP
IF_SOCKET ("timestamp", &opt_so_timestamp)
#endif
IF_TERMIOS("tiocsctty", &opt_tiocsctty)
#if WITH_EXT2 && defined(EXT2_TOPDIR_FL)
IF_ANY ("topdir", &opt_ext2_topdir)
@ -1471,6 +1532,7 @@ const struct optname optionnames[] = {
IF_NAMED ("uid-e", &opt_user_early)
IF_ANY ("uid-l", &opt_user_late)
IF_NAMED ("umask", &opt_umask)
IF_IP6 ("unicast-hops", &opt_ipv6_unicast_hops)
IF_UNIX ("unix-tightsocklen", &opt_unix_tightsocklen)
IF_NAMED ("unlink", &opt_unlink)
IF_NAMED ("unlink-close", &opt_unlink_close)
@ -1713,7 +1775,7 @@ int parseopts_table(const char **a, unsigned int groups, struct opt **opts,
(*opts)[i].value.u_bin.b_len = optlen;
break;
case TYPE_BYTE:
{
if (assign) {
unsigned long ul;
char *rest;
ul = strtoul(token, &rest/*!*/, 0);
@ -1722,11 +1784,13 @@ int parseopts_table(const char **a, unsigned int groups, struct opt **opts,
a0, ul, UCHAR_MAX);
(*opts)[i].value.u_byte = UCHAR_MAX;
} else {
Info2("setting option \"%s\" to %d", ent->desc->defname,
(*opts)[i].value.u_byte);
(*opts)[i].value.u_byte = ul;
}
} else {
(*opts)[i].value.u_byte = 1;
}
Info2("setting option \"%s\" to %d", ent->desc->defname,
(*opts)[i].value.u_byte);
break;
case TYPE_INT:
if (assign) {