else /* ( type == SOCK_DGRAM) */
s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
- if (s == INVALID_SOCKET) {
+ if (s == (int)INVALID_SOCKET) {
perror("socket");
return (0);
}
return (0);
s = socket(AF_UNIX, SOCK_STREAM, 0);
- if (s == INVALID_SOCKET) {
+ if (s == (int)INVALID_SOCKET) {
perror("socket");
return (0);
}
else /* type == SOCK_DGRAM */
s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
- if (s == INVALID_SOCKET)
+ if (s == (int)INVALID_SOCKET)
goto err;
# if defined SOL_SOCKET && defined SO_REUSEADDR
{
return (0);
s = socket(AF_UNIX, SOCK_STREAM, 0);
- if (s == INVALID_SOCKET)
+ if (s == (int)INVALID_SOCKET)
goto err;
memset(&server, 0, sizeof(server));
* can either go for (int *) or (void *).
*/
ret = accept(acc_sock, (struct sockaddr *)&from, (void *)&len);
- if (ret == INVALID_SOCKET) {
+ if (ret == (int)INVALID_SOCKET) {
# if defined(OPENSSL_SYS_WINDOWS) || (defined(OPENSSL_SYS_NETWARE) && !defined(NETWARE_BSDSOCK))
int i;
i = WSAGetLastError();
redoit:
ret = accept(acc_sock, NULL, NULL);
- if (ret == INVALID_SOCKET) {
+ if (ret == (int)INVALID_SOCKET) {
if (errno == EINTR) {
/*
* check_timeout();
struct sockaddr_in6 sa_in6;
# endif
} server, client;
- int s = INVALID_SOCKET, cs, addrlen;
+ int s = (int)INVALID_SOCKET, cs, addrlen;
unsigned char ip[4];
unsigned short port;
char *str = NULL, *e;
int err_num;
if (BIO_sock_init() != 1)
- return (INVALID_SOCKET);
+ return ((int)INVALID_SOCKET);
if ((str = BUF_strdup(host)) == NULL)
- return (INVALID_SOCKET);
+ return ((int)INVALID_SOCKET);
h = p = NULL;
h = str;
again:
s = socket(server.sa.sa_family, SOCK_STREAM, SOCKET_PROTOCOL);
- if (s == INVALID_SOCKET) {
+ if (s == (int)INVALID_SOCKET) {
SYSerr(SYS_F_SOCKET, get_last_socket_error());
ERR_add_error_data(3, "port='", host, "'");
BIOerr(BIO_F_BIO_GET_ACCEPT_SOCKET, BIO_R_UNABLE_TO_CREATE_SOCKET);
goto err;
}
cs = socket(client.sa.sa_family, SOCK_STREAM, SOCKET_PROTOCOL);
- if (cs != INVALID_SOCKET) {
+ if (cs != (int)INVALID_SOCKET) {
int ii;
ii = connect(cs, &client.sa, addrlen);
closesocket(cs);
- if (ii == INVALID_SOCKET) {
+ if (ii == (int)INVALID_SOCKET) {
bind_mode = BIO_BIND_REUSEADDR;
closesocket(s);
goto again;
ret = 1;
err:
OPENSSL_free(str);
- if ((ret == 0) && (s != INVALID_SOCKET)) {
+ if ((ret == 0) && (s != (int)INVALID_SOCKET)) {
closesocket(s);
- s = INVALID_SOCKET;
+ s = (int)INVALID_SOCKET;
}
return (s);
}
int BIO_accept(int sock, char **addr)
{
- int ret = INVALID_SOCKET;
+ int ret = (int)INVALID_SOCKET;
unsigned long l;
unsigned short port;
char *p;
sa.len.i = (int)sa.len.s;
/* use sa.len.i from this point */
}
- if (ret == INVALID_SOCKET) {
+ if (ret == (int)INVALID_SOCKET) {
if (BIO_sock_should_retry(ret))
return -2;
SYSerr(SYS_F_ACCEPT, get_last_socket_error());
BIO_ACCEPT *ba;
bi->init = 0;
- bi->num = INVALID_SOCKET;
+ bi->num = (int)INVALID_SOCKET;
bi->flags = 0;
if ((ba = BIO_ACCEPT_new()) == NULL)
return (0);
if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL)
return (NULL);
- ret->accept_sock = INVALID_SOCKET;
+ ret->accept_sock = (int)INVALID_SOCKET;
ret->bind_mode = BIO_BIND_NORMAL;
return (ret);
}
BIO_ACCEPT *c;
c = (BIO_ACCEPT *)bio->ptr;
- if (c->accept_sock != INVALID_SOCKET) {
+ if (c->accept_sock != (int)INVALID_SOCKET) {
shutdown(c->accept_sock, 2);
closesocket(c->accept_sock);
- c->accept_sock = INVALID_SOCKET;
- bio->num = INVALID_SOCKET;
+ c->accept_sock = (int)INVALID_SOCKET;
+ bio->num = (int)INVALID_SOCKET;
}
}
return (-1);
}
s = BIO_get_accept_socket(c->param_addr, c->bind_mode);
- if (s == INVALID_SOCKET)
+ if (s == (int)INVALID_SOCKET)
return (-1);
if (c->accept_nbio) {
c->state = BIO_CONN_S_CREATE_SOCKET;
ret = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- if (ret == INVALID_SOCKET) {
+ if (ret == (int)INVALID_SOCKET) {
SYSerr(SYS_F_SOCKET, get_last_socket_error());
ERR_add_error_data(4, "host=", c->param_hostname,
":", c->param_port);
static int conn_new(BIO *bi)
{
bi->init = 0;
- bi->num = INVALID_SOCKET;
+ bi->num = (int)INVALID_SOCKET;
bi->flags = 0;
if ((bi->ptr = (char *)BIO_CONNECT_new()) == NULL)
return (0);
BIO_CONNECT *c;
c = (BIO_CONNECT *)bio->ptr;
- if (bio->num != INVALID_SOCKET) {
+ if (bio->num != (int)INVALID_SOCKET) {
/* Only do a shutdown if things were established */
if (c->state == BIO_CONN_S_OK)
shutdown(bio->num, 2);
closesocket(bio->num);
- bio->num = INVALID_SOCKET;
+ bio->num = (int)INVALID_SOCKET;
}
}
/*
* Even though sizeof(SOCKET) is 8, it's safe to cast it to int, because
* the value constitutes an index in per-process table of limited size
- * and not a real pointer.
+ * and not a real pointer. And we also depend on fact that all processors
+ * Windows run on happen to be two's-complement, which allows to
+ * interchange INVALID_SOCKET and -1.
*/
# define socket(d,t,p) ((int)socket(d,t,p))
# define accept(s,f,l) ((int)accept(s,f,l))