From ce46597601ee0fec0524dfdcc7b220323faf2fd3 Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Mon, 3 Feb 1992 23:46:14 +0000 Subject: [PATCH] Change arity of OS_open_server_socket. --- v7/src/microcode/uxsock.c | 12 +++++++++--- v7/src/microcode/uxsock.h | 6 +++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/v7/src/microcode/uxsock.c b/v7/src/microcode/uxsock.c index ab05fb869..3093b686d 100644 --- a/v7/src/microcode/uxsock.c +++ b/v7/src/microcode/uxsock.c @@ -1,6 +1,6 @@ /* -*-C-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxsock.c,v 1.6 1992/01/20 17:18:50 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxsock.c,v 1.7 1992/02/03 23:45:31 jinx Exp $ Copyright (c) 1990-92 Massachusetts Institute of Technology @@ -44,6 +44,7 @@ MIT in each case. */ #endif #include "uxsock.h" #include "uxio.h" +#include "prims.h" extern struct servent * EXFUN (getservbyname, (const char *, const char *)); extern struct hostent * EXFUN (gethostbyname, (const char *)); @@ -130,9 +131,14 @@ DEFUN (OS_open_unix_stream_socket, (filename), CONST char * filename) #endif Tchannel -DEFUN (OS_open_server_socket, (port), int port) +DEFUN (OS_open_server_socket, (port, ArgNo), unsigned int port AND int ArgNo) { int s; + + if (((sizeof (unsigned int)) > + (sizeof (((struct sockaddr_in *) 0)->sin_port))) && + (port >= (1<<(CHAR_BIT * (((struct sockaddr_in *) 0)->sin_port))))) + error_bad_range_arg(ArgNo); STD_UINT_SYSTEM_CALL (syscall_socket, s, (UX_socket (AF_INET, SOCK_STREAM, 0))); { @@ -228,7 +234,7 @@ DEFUN (OS_open_unix_stream_socket, (filename), CONST char * filename) } Tchannel -DEFUN (OS_open_server_socket, (port), int port) +DEFUN (OS_open_server_socket, (port, ArgNo), unsigned int port AND int ArgNo) { error_unimplemented_primitive (); return (NO_CHANNEL); diff --git a/v7/src/microcode/uxsock.h b/v7/src/microcode/uxsock.h index f62639aa6..ce42a860f 100644 --- a/v7/src/microcode/uxsock.h +++ b/v7/src/microcode/uxsock.h @@ -1,8 +1,8 @@ /* -*-C-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxsock.h,v 1.2 1990/11/08 11:11:57 cph Rel $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxsock.h,v 1.3 1992/02/03 23:46:14 jinx Exp $ -Copyright (c) 1990 Massachusetts Institute of Technology +Copyright (c) 1990-92 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -48,7 +48,7 @@ extern char ** EXFUN (OS_get_host_by_name, (CONST char * host_name)); extern Tchannel EXFUN (OS_open_unix_stream_socket, (CONST char * filename)); #endif -extern Tchannel EXFUN (OS_open_server_socket, (int port)); +extern Tchannel EXFUN (OS_open_server_socket, (unsigned int port, int ArgNo)); extern Tchannel EXFUN (OS_server_connection_accept, (Tchannel channel, char * peer_host, int * peer_port)); -- 2.25.1