setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &j, sizeof j);
setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (const void *) &j, sizeof j);
int init_server_long(sock, port, ip)int *sock;int port;char *ip;	{	int ret=0;	struct sockaddr_in server;	int s= -1,i;	if (!sock_init()) return(0);	memset((char *)&server,0,sizeof(server));	server.sin_family=AF_INET;	server.sin_port=htons((unsigned short)port);	if (ip == NULL)		server.sin_addr.s_addr=INADDR_ANY;	else/* Added for T3E, address-of fails on bit field (beckman@acl.lanl.gov) */#ifndef BIT_FIELD_LIMITS		memcpy(&server.sin_addr.s_addr,ip,4);#else		memcpy(&server.sin_addr,ip,4);#endif	s=socket(AF_INET,SOCK_STREAM,SOCKET_PROTOCOL);	if (s == INVALID_SOCKET) goto err;#if defined SOL_SOCKET && defined SO_REUSEADDR		{		int j = 1;		setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &j, sizeof j);		}#endif	if (bind(s,(struct sockaddr *)&server,sizeof(server)) == -1)		{#ifndef WINDOWS		perror("bind");#endif		goto err;		}	/* Make it 128 for linux */	if (listen(s,128) == -1) goto err;	i=0;	*sock=s;	ret=1;err:	if ((ret == 0) && (s != -1))		{		SHUTDOWN(s);		}	return(ret);	}