mirror of
https://github.com/X11Libre/xserver.git
synced 2026-03-24 03:44:06 +00:00
os: drop symbol TCPCONN
It's been always enabled for aeons, so no practical need to disable it. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
committed by
Enrico Weigelt
parent
7ba4f6a2b6
commit
16d4d44551
@@ -88,9 +88,6 @@
|
|||||||
/* Define to 1 on systems derived from System V Release 4 */
|
/* Define to 1 on systems derived from System V Release 4 */
|
||||||
#mesondefine SVR4
|
#mesondefine SVR4
|
||||||
|
|
||||||
/* Support TCP socket connections */
|
|
||||||
#mesondefine TCPCONN
|
|
||||||
|
|
||||||
/* Support UNIX socket connections */
|
/* Support UNIX socket connections */
|
||||||
#mesondefine UNIXCONN
|
#mesondefine UNIXCONN
|
||||||
|
|
||||||
|
|||||||
@@ -200,7 +200,6 @@ if conf_data.get('HAVE_GETPEEREID').to_int() == 0 and conf_data.get('HAVE_GETPEE
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
conf_data.set('TCPCONN', '1')
|
|
||||||
conf_data.set('UNIXCONN', host_machine.system() != 'windows' ? '1' : false)
|
conf_data.set('UNIXCONN', host_machine.system() != 'windows' ? '1' : false)
|
||||||
conf_data.set('IPv6', build_ipv6 ? '1' : false)
|
conf_data.set('IPv6', build_ipv6 ? '1' : false)
|
||||||
|
|
||||||
|
|||||||
@@ -85,13 +85,11 @@ from The Open Group.
|
|||||||
|
|
||||||
static
|
static
|
||||||
Xtransport_table Xtransports[] = {
|
Xtransport_table Xtransports[] = {
|
||||||
#if defined(TCPCONN)
|
|
||||||
{ &_XSERVTransSocketTCPFuncs, TRANS_SOCKET_TCP_INDEX },
|
{ &_XSERVTransSocketTCPFuncs, TRANS_SOCKET_TCP_INDEX },
|
||||||
#if defined(IPv6)
|
#if defined(IPv6)
|
||||||
{ &_XSERVTransSocketINET6Funcs, TRANS_SOCKET_INET6_INDEX },
|
{ &_XSERVTransSocketINET6Funcs, TRANS_SOCKET_INET6_INDEX },
|
||||||
#endif /* IPv6 */
|
#endif /* IPv6 */
|
||||||
{ &_XSERVTransSocketINETFuncs, TRANS_SOCKET_INET_INDEX },
|
{ &_XSERVTransSocketINETFuncs, TRANS_SOCKET_INET_INDEX },
|
||||||
#endif /* TCPCONN */
|
|
||||||
#if defined(UNIXCONN)
|
#if defined(UNIXCONN)
|
||||||
{ &_XSERVTransSocketLocalFuncs, TRANS_SOCKET_LOCAL_INDEX },
|
{ &_XSERVTransSocketLocalFuncs, TRANS_SOCKET_LOCAL_INDEX },
|
||||||
{ &_XSERVTransSocketUNIXFuncs, TRANS_SOCKET_UNIX_INDEX },
|
{ &_XSERVTransSocketUNIXFuncs, TRANS_SOCKET_UNIX_INDEX },
|
||||||
|
|||||||
@@ -78,13 +78,13 @@ from the copyright holders.
|
|||||||
|
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
|
|
||||||
#if defined(TCPCONN) || defined(UNIXCONN)
|
#if defined(UNIXCONN)
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(TCPCONN) || defined(UNIXCONN)
|
#if defined(UNIXCONN)
|
||||||
#define X_INCLUDE_NETDB_H
|
#define X_INCLUDE_NETDB_H
|
||||||
#define XOS_USE_NO_LOCKING
|
#define XOS_USE_NO_LOCKING
|
||||||
#include <X11/Xos_r.h>
|
#include <X11/Xos_r.h>
|
||||||
@@ -186,7 +186,6 @@ typedef struct _Sockettrans2dev {
|
|||||||
* local Platform preferred local connection method
|
* local Platform preferred local connection method
|
||||||
*/
|
*/
|
||||||
static Sockettrans2dev Sockettrans2devtab[] = {
|
static Sockettrans2dev Sockettrans2devtab[] = {
|
||||||
#ifdef TCPCONN
|
|
||||||
{"inet",AF_INET,SOCK_STREAM,SOCK_DGRAM,0},
|
{"inet",AF_INET,SOCK_STREAM,SOCK_DGRAM,0},
|
||||||
#ifndef IPv6
|
#ifndef IPv6
|
||||||
{"tcp",AF_INET,SOCK_STREAM,SOCK_DGRAM,0},
|
{"tcp",AF_INET,SOCK_STREAM,SOCK_DGRAM,0},
|
||||||
@@ -195,7 +194,6 @@ static Sockettrans2dev Sockettrans2devtab[] = {
|
|||||||
{"tcp",AF_INET,SOCK_STREAM,SOCK_DGRAM,0}, /* fallback */
|
{"tcp",AF_INET,SOCK_STREAM,SOCK_DGRAM,0}, /* fallback */
|
||||||
{"inet6",AF_INET6,SOCK_STREAM,SOCK_DGRAM,0},
|
{"inet6",AF_INET6,SOCK_STREAM,SOCK_DGRAM,0},
|
||||||
#endif
|
#endif
|
||||||
#endif /* TCPCONN */
|
|
||||||
#ifdef UNIXCONN
|
#ifdef UNIXCONN
|
||||||
{"unix",AF_UNIX,SOCK_STREAM,SOCK_DGRAM,0},
|
{"unix",AF_UNIX,SOCK_STREAM,SOCK_DGRAM,0},
|
||||||
{"local",AF_UNIX,SOCK_STREAM,SOCK_DGRAM,0},
|
{"local",AF_UNIX,SOCK_STREAM,SOCK_DGRAM,0},
|
||||||
@@ -204,9 +202,7 @@ static Sockettrans2dev Sockettrans2devtab[] = {
|
|||||||
|
|
||||||
#define NUMSOCKETFAMILIES (sizeof(Sockettrans2devtab)/sizeof(Sockettrans2dev))
|
#define NUMSOCKETFAMILIES (sizeof(Sockettrans2devtab)/sizeof(Sockettrans2dev))
|
||||||
|
|
||||||
#ifdef TCPCONN
|
|
||||||
static int _XSERVTransSocketINETClose (XtransConnInfo ciptr);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
is_numeric (const char *str)
|
is_numeric (const char *str)
|
||||||
@@ -713,7 +709,6 @@ static int _XSERVTransSocketCreateListener (XtransConnInfo ciptr,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef TCPCONN
|
|
||||||
static int _XSERVTransSocketINETCreateListener (
|
static int _XSERVTransSocketINETCreateListener (
|
||||||
XtransConnInfo ciptr, const char *port, unsigned int flags)
|
XtransConnInfo ciptr, const char *port, unsigned int flags)
|
||||||
{
|
{
|
||||||
@@ -830,9 +825,6 @@ static int _XSERVTransSocketINETCreateListener (
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* TCPCONN */
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef UNIXCONN
|
#ifdef UNIXCONN
|
||||||
|
|
||||||
static int _XSERVTransSocketUNIXCreateListener (
|
static int _XSERVTransSocketUNIXCreateListener (
|
||||||
@@ -1018,8 +1010,6 @@ static int _XSERVTransSocketUNIXResetListener (XtransConnInfo ciptr)
|
|||||||
#endif /* UNIXCONN */
|
#endif /* UNIXCONN */
|
||||||
|
|
||||||
|
|
||||||
#ifdef TCPCONN
|
|
||||||
|
|
||||||
static XtransConnInfo _XSERVTransSocketINETAccept (
|
static XtransConnInfo _XSERVTransSocketINETAccept (
|
||||||
XtransConnInfo ciptr)
|
XtransConnInfo ciptr)
|
||||||
{
|
{
|
||||||
@@ -1085,9 +1075,6 @@ static XtransConnInfo _XSERVTransSocketINETAccept (
|
|||||||
return newciptr;
|
return newciptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* TCPCONN */
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef UNIXCONN
|
#ifdef UNIXCONN
|
||||||
static XtransConnInfo _XSERVTransSocketUNIXAccept (
|
static XtransConnInfo _XSERVTransSocketUNIXAccept (
|
||||||
XtransConnInfo ciptr)
|
XtransConnInfo ciptr)
|
||||||
@@ -1382,15 +1369,6 @@ static int _XSERVTransSocketDisconnect (XtransConnInfo ciptr)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef TCPCONN
|
|
||||||
static int _XSERVTransSocketINETClose (XtransConnInfo ciptr)
|
|
||||||
{
|
|
||||||
prmsg (2,"SocketINETClose(%p,%d)\n", (void *) ciptr, ciptr->fd);
|
|
||||||
return ossock_close(ciptr->fd);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* TCPCONN */
|
|
||||||
|
|
||||||
#ifdef UNIXCONN
|
#ifdef UNIXCONN
|
||||||
static int _XSERVTransSocketUNIXClose (XtransConnInfo ciptr)
|
static int _XSERVTransSocketUNIXClose (XtransConnInfo ciptr)
|
||||||
{
|
{
|
||||||
@@ -1438,8 +1416,12 @@ static int _XSERVTransSocketUNIXCloseForCloning (XtransConnInfo ciptr)
|
|||||||
|
|
||||||
#endif /* UNIXCONN */
|
#endif /* UNIXCONN */
|
||||||
|
|
||||||
|
static int _XSERVTransSocketINETClose (XtransConnInfo ciptr)
|
||||||
|
{
|
||||||
|
prmsg (2,"SocketINETClose(%p,%d)\n", (void *) ciptr, ciptr->fd);
|
||||||
|
return ossock_close(ciptr->fd);
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef TCPCONN
|
|
||||||
static const char* tcp_nolisten[] = {
|
static const char* tcp_nolisten[] = {
|
||||||
"inet",
|
"inet",
|
||||||
#ifdef IPv6
|
#ifdef IPv6
|
||||||
@@ -1515,7 +1497,6 @@ static Xtransport _XSERVTransSocketINET6Funcs = {
|
|||||||
_XSERVTransSocketINETClose,
|
_XSERVTransSocketINETClose,
|
||||||
};
|
};
|
||||||
#endif /* IPv6 */
|
#endif /* IPv6 */
|
||||||
#endif /* TCPCONN */
|
|
||||||
|
|
||||||
#ifdef UNIXCONN
|
#ifdef UNIXCONN
|
||||||
static Xtransport _XSERVTransSocketLocalFuncs = {
|
static Xtransport _XSERVTransSocketLocalFuncs = {
|
||||||
|
|||||||
@@ -102,7 +102,6 @@ int _XSERVTransConvertAddress(int *familyp, int *addrlenp, Xtransaddr **addrp)
|
|||||||
|
|
||||||
switch( *familyp )
|
switch( *familyp )
|
||||||
{
|
{
|
||||||
#if defined(TCPCONN)
|
|
||||||
case AF_INET:
|
case AF_INET:
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
@@ -165,7 +164,6 @@ int _XSERVTransConvertAddress(int *familyp, int *addrlenp, Xtransaddr **addrp)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif /* IPv6 */
|
#endif /* IPv6 */
|
||||||
#endif /* defined(TCPCONN) */
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(UNIXCONN)
|
#if defined(UNIXCONN)
|
||||||
|
|||||||
14
os/access.c
14
os/access.c
@@ -105,9 +105,7 @@ SOFTWARE.
|
|||||||
#include <pwd.h>
|
#include <pwd.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(TCPCONN)
|
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#endif /* TCPCONN */
|
|
||||||
|
|
||||||
#ifdef HAVE_GETPEERUCRED
|
#ifdef HAVE_GETPEERUCRED
|
||||||
#include <ucred.h>
|
#include <ucred.h>
|
||||||
@@ -404,9 +402,6 @@ AccessUsingXdmcp(void)
|
|||||||
void
|
void
|
||||||
DefineSelf(int fd)
|
DefineSelf(int fd)
|
||||||
{
|
{
|
||||||
#if !defined(TCPCONN) && !defined(UNIXCONN)
|
|
||||||
return;
|
|
||||||
#else
|
|
||||||
int len;
|
int len;
|
||||||
caddr_t addr;
|
caddr_t addr;
|
||||||
int family;
|
int family;
|
||||||
@@ -519,7 +514,6 @@ DefineSelf(int fd)
|
|||||||
selfhosts = host;
|
selfhosts = host;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* !TCPCONN && !UNIXCONN */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
@@ -941,7 +935,6 @@ ResetHosts(const char *display)
|
|||||||
NewHost(family, "", 0, FALSE);
|
NewHost(family, "", 0, FALSE);
|
||||||
LocalHostRequested = TRUE; /* Fix for XFree86 bug #156 */
|
LocalHostRequested = TRUE; /* Fix for XFree86 bug #156 */
|
||||||
}
|
}
|
||||||
#if defined(TCPCONN)
|
|
||||||
else if (!strncmp("inet:", lhostname, 5)) {
|
else if (!strncmp("inet:", lhostname, 5)) {
|
||||||
family = FamilyInternet;
|
family = FamilyInternet;
|
||||||
hostname = ohostname + 5;
|
hostname = ohostname + 5;
|
||||||
@@ -951,7 +944,6 @@ ResetHosts(const char *display)
|
|||||||
family = FamilyInternet6;
|
family = FamilyInternet6;
|
||||||
hostname = ohostname + 6;
|
hostname = ohostname + 6;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
else if (!strncmp("si:", lhostname, 3)) {
|
else if (!strncmp("si:", lhostname, 3)) {
|
||||||
family = FamilyServerInterpreted;
|
family = FamilyServerInterpreted;
|
||||||
@@ -966,7 +958,6 @@ ResetHosts(const char *display)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#if defined(TCPCONN)
|
|
||||||
{
|
{
|
||||||
#if defined(HAVE_GETADDRINFO)
|
#if defined(HAVE_GETADDRINFO)
|
||||||
if ((family == FamilyInternet) ||
|
if ((family == FamilyInternet) ||
|
||||||
@@ -1021,7 +1012,6 @@ ResetHosts(const char *display)
|
|||||||
}
|
}
|
||||||
#endif /* HAVE_GETADDRINFO */
|
#endif /* HAVE_GETADDRINFO */
|
||||||
}
|
}
|
||||||
#endif /* TCPCONN */
|
|
||||||
family = FamilyWild;
|
family = FamilyWild;
|
||||||
}
|
}
|
||||||
fclose(fd);
|
fclose(fd);
|
||||||
@@ -1445,7 +1435,6 @@ CheckAddr(int family, const void *pAddr, unsigned length)
|
|||||||
int len;
|
int len;
|
||||||
|
|
||||||
switch (family) {
|
switch (family) {
|
||||||
#if defined(TCPCONN)
|
|
||||||
case FamilyInternet:
|
case FamilyInternet:
|
||||||
if (length == sizeof(struct in_addr))
|
if (length == sizeof(struct in_addr))
|
||||||
len = length;
|
len = length;
|
||||||
@@ -1459,7 +1448,6 @@ CheckAddr(int family, const void *pAddr, unsigned length)
|
|||||||
else
|
else
|
||||||
len = -1;
|
len = -1;
|
||||||
break;
|
break;
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
case FamilyServerInterpreted:
|
case FamilyServerInterpreted:
|
||||||
len = siCheckAddr(pAddr, length);
|
len = siCheckAddr(pAddr, length);
|
||||||
@@ -1528,7 +1516,6 @@ ConvertAddr(register struct sockaddr *saddr, int *len, void **addr)
|
|||||||
case AF_UNIX:
|
case AF_UNIX:
|
||||||
#endif
|
#endif
|
||||||
return FamilyLocal;
|
return FamilyLocal;
|
||||||
#if defined(TCPCONN)
|
|
||||||
case AF_INET:
|
case AF_INET:
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
if (16777343 == *(long *) &((struct sockaddr_in *) saddr)->sin_addr)
|
if (16777343 == *(long *) &((struct sockaddr_in *) saddr)->sin_addr)
|
||||||
@@ -1553,7 +1540,6 @@ ConvertAddr(register struct sockaddr *saddr, int *len, void **addr)
|
|||||||
return FamilyInternet6;
|
return FamilyInternet6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
@@ -79,7 +79,6 @@ SOFTWARE.
|
|||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
|
|
||||||
#if defined(TCPCONN)
|
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#ifdef CSRG_BASED
|
#ifdef CSRG_BASED
|
||||||
@@ -88,8 +87,9 @@ SOFTWARE.
|
|||||||
#include <netinet/tcp.h>
|
#include <netinet/tcp.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#endif
|
#endif
|
||||||
|
#ifndef WIN32
|
||||||
#include <sys/uio.h>
|
#include <sys/uio.h>
|
||||||
#endif /* WIN32 */
|
#endif
|
||||||
|
|
||||||
#include "dix/dix_priv.h"
|
#include "dix/dix_priv.h"
|
||||||
#include "dix/dixgrabs_priv.h"
|
#include "dix/dixgrabs_priv.h"
|
||||||
@@ -351,7 +351,6 @@ AuthAudit(ClientPtr client, Bool letin,
|
|||||||
#endif
|
#endif
|
||||||
strlcpy(addr, "local host", sizeof(addr));
|
strlcpy(addr, "local host", sizeof(addr));
|
||||||
break;
|
break;
|
||||||
#if defined(TCPCONN)
|
|
||||||
case AF_INET:{
|
case AF_INET:{
|
||||||
#if defined(HAVE_INET_NTOP)
|
#if defined(HAVE_INET_NTOP)
|
||||||
char ipaddr[INET_ADDRSTRLEN];
|
char ipaddr[INET_ADDRSTRLEN];
|
||||||
@@ -374,7 +373,6 @@ AuthAudit(ClientPtr client, Bool letin,
|
|||||||
snprintf(addr, sizeof(addr), "IP %s", ipaddr);
|
snprintf(addr, sizeof(addr), "IP %s", ipaddr);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
strlcpy(addr, "unknown address", sizeof(addr));
|
strlcpy(addr, "unknown address", sizeof(addr));
|
||||||
|
|||||||
@@ -62,9 +62,7 @@ from The Open Group.
|
|||||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(TCPCONN) || defined(UNIXCONN)
|
|
||||||
#include "Xtranssock.c"
|
#include "Xtranssock.c"
|
||||||
#endif
|
|
||||||
#include "Xtrans.c"
|
#include "Xtrans.c"
|
||||||
#include "Xtransutil.c"
|
#include "Xtransutil.c"
|
||||||
|
|
||||||
|
|||||||
@@ -88,11 +88,9 @@ OR PERFORMANCE OF THIS SOFTWARE.
|
|||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdlib.h> /* for calloc() */
|
#include <stdlib.h> /* for calloc() */
|
||||||
|
|
||||||
#if defined(TCPCONN)
|
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "dix/dix_priv.h"
|
#include "dix/dix_priv.h"
|
||||||
#include "dix/input_priv.h"
|
#include "dix/input_priv.h"
|
||||||
@@ -783,7 +781,6 @@ int
|
|||||||
set_font_authorizations(char **authorizations, int *authlen, void *client)
|
set_font_authorizations(char **authorizations, int *authlen, void *client)
|
||||||
{
|
{
|
||||||
#define AUTHORIZATION_NAME "hp-hostname-1"
|
#define AUTHORIZATION_NAME "hp-hostname-1"
|
||||||
#if defined(TCPCONN)
|
|
||||||
static char *result = NULL;
|
static char *result = NULL;
|
||||||
static char *p = NULL;
|
static char *p = NULL;
|
||||||
|
|
||||||
@@ -845,9 +842,6 @@ set_font_authorizations(char **authorizations, int *authlen, void *client)
|
|||||||
*authlen = p - result;
|
*authlen = p - result;
|
||||||
*authorizations = result;
|
*authorizations = result;
|
||||||
return 1;
|
return 1;
|
||||||
#else /* TCPCONN */
|
|
||||||
return 0;
|
|
||||||
#endif /* TCPCONN */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
@@ -282,7 +282,6 @@ XdmAuthorizationValidate(unsigned char *plain, int length,
|
|||||||
if (_XSERVTransGetPeerAddr(((OsCommPtr) xclient->osPrivate)->trans_conn,
|
if (_XSERVTransGetPeerAddr(((OsCommPtr) xclient->osPrivate)->trans_conn,
|
||||||
&family, &addr_len, &addr) == 0
|
&family, &addr_len, &addr) == 0
|
||||||
&& _XSERVTransConvertAddress(&family, &addr_len, &addr) == 0) {
|
&& _XSERVTransConvertAddress(&family, &addr_len, &addr) == 0) {
|
||||||
#if defined(TCPCONN)
|
|
||||||
if (family == FamilyInternet &&
|
if (family == FamilyInternet &&
|
||||||
memcmp((char *) addr, client->client, 4) != 0) {
|
memcmp((char *) addr, client->client, 4) != 0) {
|
||||||
free(client);
|
free(client);
|
||||||
@@ -293,7 +292,6 @@ XdmAuthorizationValidate(unsigned char *plain, int length,
|
|||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
free(addr);
|
free(addr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user