mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-23 09:04:13 +00:00
Revert "Initial commit of updated IPv6"
This commit is contained in:
parent
c1833e1130
commit
21d630ba95
4 changed files with 30 additions and 39 deletions
|
@ -87,7 +87,7 @@
|
|||
if ([host length] > 0)
|
||||
{
|
||||
[urlString appendString:
|
||||
[host stringByAddingPercentEncodingWithAllowedCharacters: [NSCharacterSet URLHostAllowedCharacterSet]]];
|
||||
[host stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];
|
||||
}
|
||||
if ([port intValue] > 0)
|
||||
{
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
#import "GSNetwork.h"
|
||||
|
||||
typedef union {
|
||||
struct sockaddr_storage s; /* Increased memory allocation for IPv6 addresses*/
|
||||
struct sockaddr s;
|
||||
struct sockaddr_in i4;
|
||||
#ifdef AF_INET6
|
||||
struct sockaddr_in6 i6;
|
||||
|
@ -59,12 +59,12 @@ SOCKIVARS
|
|||
/**
|
||||
* get the sockaddr
|
||||
*/
|
||||
- (struct sockaddr_storage*) _address;
|
||||
- (struct sockaddr*) _address;
|
||||
|
||||
/**
|
||||
* set the sockaddr
|
||||
*/
|
||||
- (void) _setAddress: (struct sockaddr_storage*)address;
|
||||
- (void) _setAddress: (struct sockaddr*)address;
|
||||
|
||||
/**
|
||||
* setter for closing flag ... the remote end has stopped either sending
|
||||
|
@ -116,8 +116,8 @@ SOCKIVARS
|
|||
SOCKIVARS
|
||||
@end
|
||||
@interface GSSocketInputStream (AddedBehaviors)
|
||||
- (struct sockaddr_storage*) _address;
|
||||
- (void) _setAddress: (struct sockaddr_storage*)address;
|
||||
- (struct sockaddr*) _address;
|
||||
- (void) _setAddress: (struct sockaddr*)address;
|
||||
- (NSInteger) _read: (uint8_t *)buffer maxLength: (NSUInteger)len;
|
||||
- (void) _setClosing: (BOOL)passive;
|
||||
- (void) _setHandler: (id)h;
|
||||
|
@ -158,8 +158,8 @@ SOCKIVARS
|
|||
SOCKIVARS
|
||||
@end
|
||||
@interface GSSocketOutputStream (AddedBehaviors)
|
||||
- (struct sockaddr_storage*) _address;
|
||||
- (void) _setAddress: (struct sockaddr_storage*)address;
|
||||
- (struct sockaddr*) _address;
|
||||
- (void) _setAddress: (struct sockaddr*)address;
|
||||
- (void) _setClosing: (BOOL)passive;
|
||||
- (void) _setHandler: (id)h;
|
||||
- (void) _setPassive: (BOOL)passive;
|
||||
|
@ -214,8 +214,8 @@ SOCKIVARS
|
|||
|
||||
@end
|
||||
@interface GSSocketServerStream (AddedBehaviors)
|
||||
- (struct sockaddr_storage*) _address;
|
||||
- (void) _setAddress: (struct sockaddr_storage*)address;
|
||||
- (struct sockaddr*) _address;
|
||||
- (void) _setAddress: (struct sockaddr*)address;
|
||||
- (void) _setClosing: (BOOL)passive;
|
||||
- (void) _setHandler: (id)h;
|
||||
- (void) _setPassive: (BOOL)passive;
|
||||
|
|
|
@ -943,7 +943,7 @@ static NSString * const GSSOCKSAckConn = @"GSSOCKSAckConn";
|
|||
if (conf != nil)
|
||||
{
|
||||
GSSOCKS *h;
|
||||
struct sockaddr_storage *sa = [i _address];
|
||||
struct sockaddr *sa = [i _address];
|
||||
NSString *v;
|
||||
BOOL i6 = NO;
|
||||
|
||||
|
@ -958,15 +958,15 @@ static NSString * const GSSOCKSAckConn = @"GSSOCKSAckConn";
|
|||
}
|
||||
|
||||
#if defined(AF_INET6)
|
||||
if (sa->ss_family == AF_INET6)
|
||||
if (sa->sa_family == AF_INET6)
|
||||
{
|
||||
i6 = YES;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (sa->ss_family != AF_INET)
|
||||
if (sa->sa_family != AF_INET)
|
||||
{
|
||||
GSOnceMLog(@"SOCKS not supported for socket type %d", sa->ss_family);
|
||||
GSOnceMLog(@"SOCKS not supported for socket type %d", sa->sa_family);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1563,12 +1563,12 @@ setNonBlocking(SOCKET fd)
|
|||
#endif
|
||||
_sock = INVALID_SOCKET;
|
||||
_handler = nil;
|
||||
_address.s.ss_family = AF_UNSPEC;
|
||||
_address.s.sa_family = AF_UNSPEC;
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (struct sockaddr_storage*) _address
|
||||
- (struct sockaddr*) _address
|
||||
{
|
||||
return &_address.s;
|
||||
}
|
||||
|
@ -1577,7 +1577,7 @@ setNonBlocking(SOCKET fd)
|
|||
{
|
||||
id result = [super propertyForKey: key];
|
||||
|
||||
if (result == nil && _address.s.ss_family != AF_UNSPEC)
|
||||
if (result == nil && _address.s.sa_family != AF_UNSPEC)
|
||||
{
|
||||
SOCKET s = [self _sock];
|
||||
sockaddr_any sin;
|
||||
|
@ -1693,7 +1693,7 @@ setNonBlocking(SOCKET fd)
|
|||
}
|
||||
else
|
||||
{
|
||||
[self _setAddress: (struct sockaddr_storage*)&peer];
|
||||
[self _setAddress: (struct sockaddr*)&peer];
|
||||
return YES;
|
||||
}
|
||||
}
|
||||
|
@ -1715,7 +1715,7 @@ setNonBlocking(SOCKET fd)
|
|||
else
|
||||
{
|
||||
strncpy(peer.sun_path, c_addr, sizeof(peer.sun_path)-1);
|
||||
[self _setAddress: (struct sockaddr_storage*)&peer];
|
||||
[self _setAddress: (struct sockaddr*)&peer];
|
||||
return YES;
|
||||
}
|
||||
}
|
||||
|
@ -1726,7 +1726,7 @@ setNonBlocking(SOCKET fd)
|
|||
}
|
||||
}
|
||||
|
||||
- (void) _setAddress: (struct sockaddr_storage*)address
|
||||
- (void) _setAddress: (struct sockaddr*)address
|
||||
{
|
||||
memcpy(&_address.s, address, GSPrivateSockaddrLength(address));
|
||||
}
|
||||
|
@ -1831,7 +1831,7 @@ setNonBlocking(SOCKET fd)
|
|||
{
|
||||
[GSSOCKS tryInput: self output: _sibling];
|
||||
}
|
||||
s = socket(_address.s.ss_family, SOCK_STREAM, 0);
|
||||
s = socket(_address.s.sa_family, SOCK_STREAM, 0);
|
||||
if (BADSOCKET(s))
|
||||
{
|
||||
[self _recordError];
|
||||
|
@ -1849,7 +1849,7 @@ setNonBlocking(SOCKET fd)
|
|||
[GSTLSHandler tryInput: self output: _sibling];
|
||||
}
|
||||
|
||||
result = connect([self _sock], (struct sockaddr*)&_address.s,
|
||||
result = connect([self _sock], &_address.s,
|
||||
GSPrivateSockaddrLength(&_address.s));
|
||||
if (socketError(result))
|
||||
{
|
||||
|
@ -2352,7 +2352,7 @@ setNonBlocking(SOCKET fd)
|
|||
{
|
||||
[GSSOCKS tryInput: _sibling output: self];
|
||||
}
|
||||
s = socket(_address.s.ss_family, SOCK_STREAM, 0);
|
||||
s = socket(_address.s.sa_family, SOCK_STREAM, 0);
|
||||
if (BADSOCKET(s))
|
||||
{
|
||||
[self _recordError];
|
||||
|
@ -2370,7 +2370,7 @@ setNonBlocking(SOCKET fd)
|
|||
[GSTLSHandler tryInput: _sibling output: self];
|
||||
}
|
||||
|
||||
result = connect([self _sock], (struct sockaddr*)&_address.s,
|
||||
result = connect([self _sock], &_address.s,
|
||||
GSPrivateSockaddrLength(&_address.s));
|
||||
if (socketError(result))
|
||||
{
|
||||
|
@ -2756,7 +2756,7 @@ setNonBlocking(SOCKET fd)
|
|||
return;
|
||||
}
|
||||
|
||||
s = socket(_address.s.ss_family, SOCK_STREAM, 0);
|
||||
s = socket(_address.s.sa_family, SOCK_STREAM, 0);
|
||||
if (BADSOCKET(s))
|
||||
{
|
||||
[self _recordError];
|
||||
|
@ -2769,9 +2769,9 @@ setNonBlocking(SOCKET fd)
|
|||
}
|
||||
|
||||
#ifndef BROKEN_SO_REUSEADDR
|
||||
if (_address.s.ss_family == AF_INET
|
||||
if (_address.s.sa_family == AF_INET
|
||||
#ifdef AF_INET6
|
||||
|| _address.s.ss_family == AF_INET6
|
||||
|| _address.s.sa_family == AF_INET6
|
||||
#endif
|
||||
)
|
||||
{
|
||||
|
@ -2792,7 +2792,7 @@ setNonBlocking(SOCKET fd)
|
|||
#endif
|
||||
|
||||
bindReturn = bind([self _sock],
|
||||
(struct sockaddr*)&_address.s, GSPrivateSockaddrLength(&_address.s));
|
||||
&_address.s, GSPrivateSockaddrLength(&_address.s));
|
||||
if (socketError(bindReturn))
|
||||
{
|
||||
[self _recordError];
|
||||
|
@ -2854,11 +2854,11 @@ setNonBlocking(SOCKET fd)
|
|||
struct {
|
||||
uint8_t bytes[BUFSIZ];
|
||||
} __attribute__((aligned(2)))buf;
|
||||
struct sockaddr_storage *addr = (struct sockaddr_storage*)&buf;
|
||||
struct sockaddr *addr = (struct sockaddr*)&buf;
|
||||
socklen_t len = sizeof(buf);
|
||||
int acceptReturn;
|
||||
|
||||
acceptReturn = accept([self _sock], (struct sockaddr*)addr, (OPTLEN*)&len);
|
||||
acceptReturn = accept([self _sock], addr, (OPTLEN*)&len);
|
||||
_events &= ~NSStreamEventHasBytesAvailable;
|
||||
if (socketError(acceptReturn))
|
||||
{ // test for real error
|
||||
|
|
|
@ -951,15 +951,6 @@
|
|||
initToAddr: address port: port]);
|
||||
sock = socket(PF_INET, SOCK_STREAM, 0);
|
||||
|
||||
//IPv6
|
||||
if(!ins)
|
||||
{
|
||||
#if defined(AF_INET6)
|
||||
ins = (GSSocketStream*)AUTORELEASE([[GSInet6InputStream alloc] initToAddr: address port: port]);
|
||||
outs = (GSSocketStream*)AUTORELEASE([[GSInet6OutputStream alloc] initToAddr: address port: port]);
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Windows only permits a single event to be associated with a socket
|
||||
* at any time, but the runloop system only allows an event handle to
|
||||
|
|
Loading…
Reference in a new issue