mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-25 04:43:33 +00:00
91ea805744
are somewhat sloppy about releases -- and do not publish versioned files. I'm calling this one 3.6.2, because that's the last version found in the change log. The new build uses bsd.lib.mk and bsd.prog.mk -- in order to: a) build shared libraries cleanly; b) stand a chance of working on the hardware platforms, where the author never tried it. The large patches provide for warning-free compiles with WARNS=7 -- tested on FreeBSD-11/amd64. We now take care to link with libgnuregex.so -- whether from base or provided by devel/libgnuregex instead of using the bundled (ancient) version of Henry Spencer's library. Similarly, the port links with the base -lmd instead of compiling its own MD5-implementation. Additional new feature is options, which currently include: . Socket support -- this used to be built unconditionally and is still on by default. However, someone concerned about the "network daemon" security warning may want to to turn this off. . Regex module -- also on by default. But, because it may, depending on the OS version, drag in a dependency, it can be turned off. . NDBM -- a never-before built (not on FreeBSD) module allowing work with NDBM databases. On by default now, because it has no dependencies. . GD -- the graphics library. Never built before by this port, it remains off by default because it depends on graphics/gd (or ukrainian/gd). . SQL_SYBASE -- for interactions with Sybase (and MS-SQL) database servers. Depends on databases/freetds and therefor off by default. There is also sql_oracle module, which is not enabled (for now), because databases/oracle8-client is, unfortunately, i386-only. The peculiarity of installing siod.html into ${PREFIX}/lib/siod remains for now -- suggestions welcome. Sponsored by: United Marsupials
333 lines
8.2 KiB
Plaintext
333 lines
8.2 KiB
Plaintext
--- ss.h 2014-03-25 04:10:42.000000000 -0400
|
|
+++ ss.h 2021-02-15 21:54:42.171506000 -0500
|
|
@@ -16,11 +16,2 @@
|
|
(--(p)->ocnt < 0 ? ss_flsbuf((int)(c),(p)) : \
|
|
(int)(*(p)->optr++ = (unsigned char)(c)))
|
|
-
|
|
-
|
|
-LISP s_open(LISP lhost,LISP lport,LISP aflag);
|
|
-LISP s_close(LISP s);
|
|
-int ss_filbuf(struct sock_stream *ss);
|
|
-int ss_flsbuf(int c,struct sock_stream *ss);
|
|
-struct sock_stream *get_ss(LISP s,long openchk);
|
|
-void ss_force(struct sock_stream *ss);
|
|
-LISP s_accept(LISP s,LISP tmo);
|
|
--- ss.c 2014-03-25 04:25:34.000000000 -0400
|
|
+++ ss.c 2021-02-15 21:51:58.557028000 -0500
|
|
@@ -72,5 +72,5 @@
|
|
static long tc_sock_stream = 0;
|
|
|
|
-LISP lgetproto(LISP lproto)
|
|
+static LISP lgetproto(LISP lproto)
|
|
{long iflag,j;
|
|
LISP result = NIL;
|
|
@@ -84,5 +84,5 @@
|
|
return(nreverse(result));}
|
|
|
|
-LISP lgetservice(LISP lport,LISP lproto)
|
|
+static LISP lgetservice(LISP lport,LISP lproto)
|
|
{long iflag,j;
|
|
LISP result = NIL;
|
|
@@ -98,5 +98,5 @@
|
|
return(nreverse(result));}
|
|
|
|
-LISP s_open(LISP lhost,LISP lport,LISP aflag)
|
|
+static LISP s_open(LISP lhost,LISP lport,LISP aflag)
|
|
/* to make these "easy" we have over-encapsulated things
|
|
a bit. at some point rework things, but for now the
|
|
@@ -107,5 +107,5 @@
|
|
short port;
|
|
LISP s;
|
|
- char *hname;
|
|
+ const char *hname;
|
|
struct sockaddr_in local, remote;
|
|
struct hostent *hostinfo;
|
|
@@ -187,5 +187,5 @@
|
|
return(s);}
|
|
|
|
-LISP gethostbyaddr_l(LISP addr)
|
|
+static LISP gethostbyaddr_l(LISP addr)
|
|
{struct hostent *hostinfo;
|
|
unsigned int x;
|
|
@@ -196,5 +196,5 @@
|
|
return(strcons(strlen(hostinfo->h_name),hostinfo->h_name));}
|
|
|
|
-LISP decode_hostent(struct hostent *p)
|
|
+static LISP decode_hostent(struct hostent *p)
|
|
{LISP name;
|
|
LISP aliases = NIL,addr_list = NIL,addr;
|
|
@@ -215,5 +215,5 @@
|
|
cons(cintern("addrtype"),flocons(p->h_addrtype))));}
|
|
|
|
-LISP gethostbyname_l(LISP name)
|
|
+static LISP gethostbyname_l(LISP name)
|
|
{struct hostent *hostinfo;
|
|
if (!(hostinfo = gethostbyname(get_c_string(name))))
|
|
@@ -221,5 +221,5 @@
|
|
return(decode_hostent(hostinfo));}
|
|
|
|
-LISP inet_addr_l(LISP str)
|
|
+static LISP inet_addr_l(LISP str)
|
|
{unsigned int x;
|
|
double g;
|
|
@@ -228,5 +228,5 @@
|
|
if (str->storage_as.string.dim != 4)
|
|
err("address must be 4 bytes",str);
|
|
- x = *((int *)str->storage_as.string.data);
|
|
+ x = *((unsigned int *)(void *)str->storage_as.string.data);
|
|
break;
|
|
default:
|
|
@@ -240,5 +240,5 @@
|
|
return(NIL);}
|
|
|
|
-LISP inet_ntoa_l(LISP str)
|
|
+static LISP inet_ntoa_l(LISP str)
|
|
{char buff[50];
|
|
unsigned int x;
|
|
@@ -284,5 +284,7 @@
|
|
#endif
|
|
|
|
-LISP s_accept(LISP as,LISP tmo)
|
|
+static struct sock_stream *get_ss(LISP s, long openchk);
|
|
+
|
|
+static LISP s_accept(LISP as, LISP tmo)
|
|
{struct sock_stream *ss;
|
|
int iflag,sd;
|
|
@@ -320,12 +322,12 @@
|
|
return(s);}
|
|
|
|
-struct sock_stream *get_ss(LISP s,long openchk)
|
|
+static struct sock_stream *get_ss(LISP s, long openchk)
|
|
{if NTYPEP(s,tc_sock_stream)
|
|
err("not a socket stream",s);
|
|
if (openchk && !s->storage_as.string.dim)
|
|
err("socket is closed",s);
|
|
- return((struct sock_stream *) s->storage_as.string.data);}
|
|
+ return((struct sock_stream *)(void *)s->storage_as.string.data);}
|
|
|
|
-LISP s_close(LISP s)
|
|
+static LISP s_close(LISP s)
|
|
{struct sock_stream *ss;
|
|
int iflag,sd;
|
|
@@ -344,5 +346,5 @@
|
|
|
|
|
|
-LISP s_shutdown(LISP s,LISP flag)
|
|
+static LISP s_shutdown(LISP s, LISP flag)
|
|
{struct sock_stream *ss;
|
|
int iflag,sd,how;
|
|
@@ -363,5 +365,5 @@
|
|
return(NIL);}
|
|
|
|
-int ss_filbuf(struct sock_stream *ss)
|
|
+static int ss_filbuf(struct sock_stream *ss)
|
|
{int status;
|
|
ss->icnt = 0;
|
|
@@ -388,5 +390,5 @@
|
|
}
|
|
|
|
-void ss_force(struct sock_stream *ss)
|
|
+static void ss_force(struct sock_stream *ss)
|
|
{int status,size,j;
|
|
size = ss->bufsiz - ((ss->ocnt > 0) ? ss->ocnt : 0);
|
|
@@ -399,5 +401,5 @@
|
|
sent_zero();}
|
|
|
|
-int ss_flsbuf(int c,struct sock_stream *ss)
|
|
+static int ss_flsbuf(int c, struct sock_stream *ss)
|
|
{ss_force(ss);
|
|
--(ss)->ocnt;
|
|
@@ -405,5 +407,5 @@
|
|
return(c);}
|
|
|
|
-LISP s_getc(LISP s)
|
|
+static LISP s_getc(LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
int c,iflag;
|
|
@@ -413,8 +415,8 @@
|
|
return((c == EOF) ? NIL : flocons(c));}
|
|
|
|
-LISP s_icnt(LISP s)
|
|
+static LISP s_icnt(LISP s)
|
|
{return(flocons(get_ss(s,1)->icnt));}
|
|
|
|
-LISP s_putc(LISP lc,LISP s)
|
|
+static LISP s_putc(LISP lc,LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
int c = get_c_long(lc),iflag;
|
|
@@ -424,7 +426,7 @@
|
|
return(NIL);}
|
|
|
|
-LISP s_puts(LISP str,LISP s)
|
|
+static LISP s_puts(LISP str,LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
- char *data = get_c_string(str);
|
|
+ const char *data = get_c_string(str);
|
|
int c,iflag;
|
|
iflag = no_interrupt(1);
|
|
@@ -433,7 +435,7 @@
|
|
return(NIL);}
|
|
|
|
-LISP s_write(LISP string,LISP file)
|
|
+static LISP s_write(LISP string,LISP file)
|
|
{long flag;
|
|
- char *data;
|
|
+ const char *data;
|
|
struct sock_stream *ss = get_ss(file,1);
|
|
long j,dim,len,status;
|
|
@@ -457,5 +459,5 @@
|
|
return(NIL);}
|
|
|
|
-LISP s_drain(LISP s)
|
|
+static LISP s_drain(LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
int c,iflag;
|
|
@@ -465,7 +467,8 @@
|
|
return(NIL);}
|
|
|
|
-LISP s_gets(LISP str,LISP s)
|
|
+static LISP s_gets(LISP str,LISP s)
|
|
{struct sock_stream *ss;
|
|
- int c,iflag,j;
|
|
+ int c, iflag;
|
|
+ size_t j;
|
|
char buffer[4096];
|
|
if NULLP(s)
|
|
@@ -490,5 +493,5 @@
|
|
return(strcons(j,buffer));}
|
|
|
|
-LISP s_read(LISP size,LISP file)
|
|
+static LISP s_read(LISP size, LISP file)
|
|
{long flag,n,ret,m,maxlen;
|
|
char *buffer;
|
|
@@ -508,5 +511,6 @@
|
|
case tc_cons:
|
|
s = car(size);
|
|
- buffer = get_c_string_dim(s,&maxlen);
|
|
+ buffer = get_string_data(s);
|
|
+ maxlen = s->storage_as.string.dim;
|
|
n = get_c_long(cadr(size));
|
|
if (n > maxlen)
|
|
@@ -516,5 +520,5 @@
|
|
default:
|
|
n = get_c_long(size);
|
|
- buffer = (char *) must_malloc(n+1);
|
|
+ buffer = must_malloc(n+1);
|
|
buffer[n] = 0;
|
|
m = 1;}
|
|
@@ -547,5 +551,5 @@
|
|
|
|
|
|
-LISP s_force_output(LISP s)
|
|
+static LISP s_force_output(LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
int iflag;
|
|
@@ -555,5 +559,5 @@
|
|
return(NIL);}
|
|
|
|
-void ss_gc_free(LISP s)
|
|
+static void ss_gc_free(LISP s)
|
|
{struct sock_stream *ss;
|
|
ss = get_ss(s,0);
|
|
@@ -564,10 +568,11 @@
|
|
free(ss);}}
|
|
|
|
-void ss_prin1(LISP s,struct gen_printio *f)
|
|
+static void ss_prin1(LISP s,struct gen_printio *f)
|
|
{char buff[512];
|
|
unsigned char *p;
|
|
struct sock_stream *ss;
|
|
struct sockaddr_in a;
|
|
- size_t len,j;
|
|
+ size_t j;
|
|
+ socklen_t len;
|
|
ss = get_ss(s,0);
|
|
if (s->storage_as.string.dim)
|
|
@@ -590,8 +595,8 @@
|
|
#ifndef WIN32
|
|
|
|
-LISP l_getname(int (*fcn)(int fn, struct sockaddr *,size_t *),char *msg,LISP s)
|
|
+static LISP l_getname(int (*fcn)(int fn, struct sockaddr *, socklen_t *), const char *msg, LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
struct sockaddr_in a;
|
|
- size_t len;
|
|
+ socklen_t len;
|
|
char buff[512];
|
|
unsigned char *p;
|
|
@@ -602,11 +607,11 @@
|
|
sprintf(buff,"%d.%d.%d.%d:%d",(int)p[0],(int)p[1],(int)p[2],(int)p[3],
|
|
(int)ntohs(a.sin_port));
|
|
- printf("buff is %d long\n",strlen(buff));
|
|
+ printf("buff is %zu long\n", strlen(buff));
|
|
return(strcons(-1,buff));}
|
|
|
|
-LISP l_getsockname(LISP s)
|
|
+static LISP l_getsockname(LISP s)
|
|
{return(l_getname(getsockname,"getsockname",s));}
|
|
|
|
-LISP l_getpeername(LISP s)
|
|
+static LISP l_getpeername(LISP s)
|
|
{return(l_getname(getpeername,"getpeername",s));}
|
|
|
|
@@ -618,5 +623,5 @@
|
|
|
|
|
|
-LISP l_getsockname(LISP s)
|
|
+static LISP l_getsockname(LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
struct sockaddr_in a;
|
|
@@ -632,5 +637,5 @@
|
|
return(strcons(-1,buff));}
|
|
|
|
-LISP l_getpeername(LISP s)
|
|
+static LISP l_getpeername(LISP s)
|
|
{struct sock_stream *ss = get_ss(s,1);
|
|
struct sockaddr_in a;
|
|
@@ -646,10 +651,7 @@
|
|
return(strcons(-1,buff));}
|
|
|
|
-
|
|
-
|
|
#endif
|
|
-
|
|
|
|
-int ss_getc_fcn(struct sock_stream *ss)
|
|
+static int ss_getc_fcn(struct sock_stream *ss)
|
|
{int c,iflag;
|
|
iflag = no_interrupt(1);
|
|
@@ -658,5 +660,5 @@
|
|
return(c);}
|
|
|
|
-void ss_ungetc_fcn(int c,struct sock_stream *ss)
|
|
+static void ss_ungetc_fcn(int c,struct sock_stream *ss)
|
|
{int iflag;
|
|
if (c == EOF) return;
|
|
@@ -668,5 +670,5 @@
|
|
no_interrupt(iflag);}
|
|
|
|
-LISP s_read_sexp(LISP s)
|
|
+static LISP s_read_sexp(LISP s)
|
|
{struct gen_readio r;
|
|
r.getc_fcn = (int (*)(void *)) ss_getc_fcn;
|
|
@@ -675,5 +677,5 @@
|
|
return(readtl(&r));}
|
|
|
|
-LISP lgethostname(void)
|
|
+static LISP lgethostname(void)
|
|
{char buff[256];
|
|
if (gethostname(buff,sizeof(buff)))
|
|
@@ -684,5 +686,5 @@
|
|
#if defined(unix)
|
|
|
|
-LISP lgethostid(void)
|
|
+static LISP lgethostid(void)
|
|
{return(flocons(gethostid()));}
|
|
|
|
@@ -701,4 +703,6 @@
|
|
#endif
|
|
|
|
+void init_ss(void); /* Our sole exported symbol */
|
|
+
|
|
void init_ss(void)
|
|
{long j;
|