merged actual branch 1 fixes

This commit is contained in:
Gerhard Rieger 2008-10-31 07:43:26 +01:00
commit 2ade09e5ab
4 changed files with 19 additions and 13 deletions

View file

@ -1,5 +1,5 @@
####################### V 2.0.0-b1: ####################### V 2.0.0-b2:
new features: new features:
address chains consisting of inter and endpoint addresses, linked with address chains consisting of inter and endpoint addresses, linked with
@ -27,6 +27,12 @@ new features:
new form of FD address with output/input fd numbers new form of FD address with output/input fd numbers
corrections:
help displayed some option types wrong
under some circumstances shutdown was called multiple times for the
same fd
####################### V 1.7.0.0: ####################### V 1.7.0.0:
new features: new features:

View file

@ -4592,7 +4592,7 @@ N=$((N+1))
NAME=PROXY2SPACES NAME=PROXY2SPACES
case "$TESTS" in case "$TESTS" in
*%functions%*|*%$NAME%*) *%functions%*|*%proxy%*|*%$NAME%*)
TEST="$NAME: proxy connect accepts status with multiple spaces" TEST="$NAME: proxy connect accepts status with multiple spaces"
if ! eval $NUMCOND; then :; if ! eval $NUMCOND; then :;
elif ! testaddrs proxy >/dev/null; then elif ! testaddrs proxy >/dev/null; then
@ -4888,7 +4888,7 @@ N=$((N+1))
#! #!
NAME=OUTBOUNDIN NAME=OUTBOUNDIN
case "$TESTS" in case "$TESTS" in
*%functions%*|*%$NAME%*) *%functions%*|*%proxy%*|*%$NAME%*)
TEST="$NAME: gender changer via SSL through HTTP proxy, oneshot" TEST="$NAME: gender changer via SSL through HTTP proxy, oneshot"
if ! eval $NUMCOND; then :; if ! eval $NUMCOND; then :;
elif ! feat=$(testaddrs openssl proxy); then elif ! feat=$(testaddrs openssl proxy); then
@ -4975,7 +4975,7 @@ PORT=$((RANDOM+16184))
#! #!
NAME=INTRANETRIPPER NAME=INTRANETRIPPER
case "$TESTS" in case "$TESTS" in
*%functions%*|*%$NAME%*) *%functions%*|*%proxy%*|*%$NAME%*)
TEST="$NAME: gender changer via SSL through HTTP proxy, daemons" TEST="$NAME: gender changer via SSL through HTTP proxy, daemons"
if ! eval $NUMCOND; then :; if ! eval $NUMCOND; then :;
elif ! feat=$(testaddrs openssl proxy); then elif ! feat=$(testaddrs openssl proxy); then
@ -7902,7 +7902,7 @@ NAME=IP4BROADCAST
# because we receive - in addition to the regular reply - our own broadcast, # because we receive - in addition to the regular reply - our own broadcast,
# we use a token XXXX that is changed to YYYY in the regular reply packet. # we use a token XXXX that is changed to YYYY in the regular reply packet.
case "$TESTS" in case "$TESTS" in
*%functions%*|*%rawip%*|*%rawip4%*|*%ip4%*|*%dgram%*|*%broadcast%*|*%root%*|*%$NAME%*) *%functions%*|*%engine%*|*%rawip%*|*%rawip4%*|*%ip4%*|*%dgram%*|*%broadcast%*|*%root%*|*%$NAME%*)
TEST="$NAME: raw IPv4 broadcast" TEST="$NAME: raw IPv4 broadcast"
if ! eval $NUMCOND; then :; if ! eval $NUMCOND; then :;
elif ! feat=$(testaddrs ip4 rawip) || ! runsip4 >/dev/null; then elif ! feat=$(testaddrs ip4 rawip) || ! runsip4 >/dev/null; then

View file

@ -436,7 +436,7 @@ int _socat(xiofile_t *xfd1, xiofile_t *xfd2) {
/* NOW handle EOFs */ /* NOW handle EOFs */
if (bytes1 == 0) { if (bytes1 == 0 || XIO_RDSTREAM(sock1)->eof >= 2) {
if (XIO_RDSTREAM(sock1)->ignoreeof && if (XIO_RDSTREAM(sock1)->ignoreeof &&
!XIO_RDSTREAM(sock1)->actescape && !sock1->stream.closing) { !XIO_RDSTREAM(sock1)->actescape && !sock1->stream.closing) {
Debug1("socket 1 (fd %d) is at EOF, ignoring", Debug1("socket 1 (fd %d) is at EOF, ignoring",
@ -459,7 +459,7 @@ int _socat(xiofile_t *xfd1, xiofile_t *xfd2) {
} }
} }
if (bytes2 == 0) { if (bytes2 == 0 || XIO_RDSTREAM(sock2)->eof >= 2) {
if (XIO_RDSTREAM(sock2)->ignoreeof && if (XIO_RDSTREAM(sock2)->ignoreeof &&
!XIO_RDSTREAM(sock2)->actescape && !sock2->stream.closing) { !XIO_RDSTREAM(sock2)->actescape && !sock2->stream.closing) {
Debug1("socket 2 (fd %d) is at EOF, ignoring", Debug1("socket 2 (fd %d) is at EOF, ignoring",

View file

@ -18,19 +18,19 @@ static const char *optiontypenames[] = {
"SHORT", "SIZE_T", "SOCKADDR", "UNSIGNED-INT", "SHORT", "SIZE_T", "SOCKADDR", "UNSIGNED-INT",
"UNSIGNED-LONG","UNSIGNED-SHORT","MODE_T", "GID_T", "UNSIGNED-LONG","UNSIGNED-SHORT","MODE_T", "GID_T",
"UID_T", "INT[3]", "STRUCT-TIMEVAL", "STRUCT-TIMESPEC", "UID_T", "INT[3]", "STRUCT-TIMEVAL", "STRUCT-TIMESPEC",
"DOUBLE", "STRING-NULL", "LONG-LONG", "OFF_T",
"OFF64_T", "INT:INT", "INT:INTP", "INT:BIN",
"INT:STRING", "INT:INT:INT", "INT:INT:BIN", "INT:INT:STRING",
"IP4NAME",
#if HAVE_STRUCT_LINGER #if HAVE_STRUCT_LINGER
"STRUCT-LINGER", "STRUCT-LINGER",
#endif #endif
"DOUBLE", "STRING-NULL", "LONG-LONG",
"OFF_T", "OFF64_T",
#if HAVE_STRUCT_IP_MREQN #if HAVE_STRUCT_IP_MREQN
"STRUCT-IP_MREQN", "STRUCT-IP_MREQN",
#elif HAVE_STRUCT_IP_MREQ #elif HAVE_STRUCT_IP_MREQ
"STRUCT-IP_MREQ", "STRUCT-IP_MREQ",
#endif #endif
"IP4NAME",
"INT:INT", "INT:INTP", "INT:BIN", "INT:STRING",
"INT:INT:INT", "INT:INT:BIN", "INT:INT:STRING",
} ; } ;