SHA256
1
0
forked from pool/tcpd

Accepting request 114927 from network:utilities

- Refresh all patches 
- Also, pass getconf LFS_CFLAGS into CFLAGS (forwarded request 114926 from elvigia)

OBS-URL: https://build.opensuse.org/request/show/114927
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/tcpd?expand=0&rev=17
This commit is contained in:
Stephan Kulow 2012-04-23 14:13:43 +00:00 committed by Git OBS Bridge
commit d60310400c
31 changed files with 236 additions and 242 deletions

View File

@ -1,6 +1,6 @@
--- scaffold.c
--- scaffold.c.orig
+++ scaffold.c
@@ -20,6 +20,8 @@
@@ -20,6 +20,8 @@ static char sccs_id[] = "@(#) scaffold.c
#include <syslog.h>
#include <setjmp.h>
#include <string.h>
@ -9,7 +9,7 @@
#if defined(INET6) && !defined(USE_GETIPNODEBY)
#include <resolv.h>
#endif
@@ -28,7 +30,6 @@
@@ -28,7 +30,6 @@ static char sccs_id[] = "@(#) scaffold.c
#define INADDR_NONE (-1) /* XXX should be 0xffffffff */
#endif

View File

@ -1,6 +1,6 @@
--- eval.c
--- eval.c.orig
+++ eval.c
@@ -111,7 +111,7 @@
@@ -111,7 +111,7 @@ struct request_info *request;
return (hostinfo);
#endif
if (STR_NE(eval_user(request), unknown)) {
@ -9,7 +9,7 @@
return (both);
} else {
return (hostinfo);
@@ -128,7 +128,7 @@
@@ -128,7 +128,7 @@ struct request_info *request;
char *daemon = eval_daemon(request);
if (STR_NE(host, unknown)) {
@ -18,9 +18,9 @@
return (both);
} else {
return (daemon);
--- tcpd.c
--- tcpd.c.orig
+++ tcpd.c
@@ -61,10 +61,10 @@
@@ -61,10 +61,10 @@ char **argv;
*/
if (argv[0][0] == '/') {

View File

@ -1,6 +1,6 @@
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -146,7 +146,7 @@
@@ -146,7 +146,7 @@ struct request_info *request;
verdict = setjmp(tcpd_buf);
if (verdict != 0)
return (verdict == AC_PERMIT);
@ -9,7 +9,7 @@
return (YES);
if (table_match(hosts_deny_table, request))
return (NO);
@@ -195,7 +195,7 @@
@@ -195,7 +195,7 @@ struct request_info *request;
} else if (errno != ENOENT) {
tcpd_warn("cannot open %s: %m", table);
}

View File

@ -1,6 +1,6 @@
--- hosts_access.5
--- hosts_access.5.orig
+++ hosts_access.5
@@ -90,6 +90,13 @@
@@ -90,6 +90,13 @@ bitwise AND of the address and the `mask
pattern `131.155.72.0/255.255.254.0\' matches every address in the
range `131.155.72.0\' through `131.155.73.255\'.
.IP \(bu
@ -14,9 +14,9 @@
An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a
`[net]/prefixlen\' pair. A IPv6 host address is matched if
`prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -273,6 +273,26 @@
@@ -273,6 +273,26 @@ struct request_info *request;
}
}
@ -43,7 +43,7 @@
/* host_match - match host name and/or address against pattern */
static int host_match(tok, host)
@@ -300,6 +320,8 @@
@@ -300,6 +320,8 @@ struct host_info *host;
tcpd_warn("netgroup support is disabled"); /* not tcpd_jump() */
return (NO);
#endif

View File

@ -1,6 +1,6 @@
--- hosts_access.5
--- hosts_access.5.orig
+++ hosts_access.5
@@ -103,6 +103,10 @@
@@ -103,6 +103,10 @@ An expression of the form `[n:n:n:n:n:n:
address. For example, the [net]/prefixlen pattern
`[3ffe:505:2:1::]/64\' matches every address in the range
`3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'.
@ -11,9 +11,9 @@
.SH WILDCARDS
The access control language supports explicit wildcards:
.IP ALL
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -346,6 +346,12 @@
@@ -346,6 +346,12 @@ char *string;
{
int n;
@ -26,7 +26,7 @@
if (tok[0] == '.') { /* suffix */
n = strlen(string) - strlen(tok);
return (n > 0 && STR_EQ(tok, string + n));
@@ -454,3 +460,71 @@
@@ -454,3 +460,71 @@ char *string;
}
#endif
}

View File

@ -1,6 +1,6 @@
--- hosts_ctl.c
--- hosts_ctl.c.orig
+++ hosts_ctl.c
@@ -29,10 +29,12 @@
@@ -29,10 +29,12 @@ char *user;
{
struct request_info request;
@ -19,9 +19,9 @@
+
+ return (hosts_access(&request));
}
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -140,6 +140,53 @@
@@ -140,6 +140,53 @@ struct request_info *request;
#endif
}
@ -75,9 +75,9 @@
/* sock_hostaddr - map endpoint address to printable form */
void sock_hostaddr(host)
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -174,10 +174,12 @@
@@ -174,10 +174,12 @@ extern char *eval_server(); /* whatever
#ifdef __STDC__
extern void sock_host(struct request_info *);

View File

@ -1,6 +1,6 @@
--- hosts_access.5
--- hosts_access.5.orig
+++ hosts_access.5
@@ -329,7 +329,7 @@
@@ -329,7 +329,7 @@ in.tftpd: LOCAL, .my.domain
/etc/hosts.deny:
.in +3
.nf

View File

@ -1,6 +1,6 @@
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -54,6 +54,7 @@
@@ -54,6 +54,7 @@ static struct hostent *gethostbyname_dot
char *name;
{
char dot_name[MAXHOSTNAMELEN + 1];
@ -8,7 +8,7 @@
/*
* Don't append dots to unqualified names. Such names are likely to come
@@ -63,8 +64,12 @@
@@ -63,8 +64,12 @@ char *name;
if (strchr(name, '.') == 0 || strlen(name) >= MAXHOSTNAMELEN - 1) {
return (gethostbyname(name));
} else {

View File

@ -1,6 +1,6 @@
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -63,6 +63,7 @@
@@ -63,6 +63,7 @@ static char sep[] = ", \t\r\n";
#define YES 1
#define NO 0
@ -8,7 +8,7 @@
/*
* These variables are globally visible so that they can be redirected in
@@ -125,7 +126,6 @@
@@ -125,7 +126,6 @@ int hosts_access(request)
struct request_info *request;
{
int verdict;
@ -16,7 +16,7 @@
/*
* If the (daemon, client) pair is matched by an entry in the file
* /etc/hosts.allow, access is granted. Otherwise, if the (daemon,
@@ -148,9 +148,9 @@
@@ -148,9 +148,9 @@ struct request_info *request;
return (verdict == AC_PERMIT);
if (table_match(hosts_allow_table, request) == YES)
return (YES);
@ -29,7 +29,7 @@
}
/* table_match - match table entries with (daemon, client) pair */
@@ -194,6 +194,7 @@
@@ -194,6 +194,7 @@ struct request_info *request;
(void) fclose(fp);
} else if (errno != ENOENT) {
tcpd_warn("cannot open %s: %m", table);

View File

@ -1,6 +1,6 @@
--- rfc931.c
--- rfc931.c.orig
+++ rfc931.c
@@ -92,6 +92,8 @@
@@ -92,6 +92,8 @@ char *dest;
char *cp;
char *result = unknown;
FILE *fp;
@ -9,7 +9,7 @@
#ifdef INET6
/* address family must be the same */
@@ -134,7 +136,12 @@
@@ -134,7 +136,12 @@ char *dest;
*/
if (sigsetjmp(timebuf, 1) == 0) {
@ -23,7 +23,7 @@
alarm(rfc931_timeout);
/*
@@ -223,6 +230,10 @@
@@ -223,6 +230,10 @@ char *dest;
}
alarm(0);
}

View File

@ -1,6 +1,6 @@
--- shell_cmd.c
--- shell_cmd.c.orig
+++ shell_cmd.c
@@ -24,6 +24,11 @@
@@ -24,6 +24,11 @@ static char sccsid[] = "@(#) shell_cmd.c
#include <unistd.h>
#include <syslog.h>
#include <string.h>
@ -12,7 +12,7 @@
extern void exit();
@@ -35,13 +40,42 @@
@@ -35,13 +40,42 @@ extern void exit();
static void do_child();
@ -56,7 +56,7 @@
/*
* Most of the work is done within the child process, to minimize the
@@ -53,12 +87,26 @@
@@ -53,12 +87,26 @@ char *command;
tcpd_warn("cannot fork: %m");
break;
case 00: /* child */

View File

@ -1,6 +1,6 @@
--- rfc931.c
--- rfc931.c.orig
+++ rfc931.c
@@ -33,7 +33,7 @@
@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1.
int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */
@ -9,7 +9,7 @@
/* fsocket - open stdio stream on top of socket */
@@ -62,7 +62,7 @@
@@ -62,7 +62,7 @@ int protocol;
static void timeout(sig)
int sig;
{
@ -18,7 +18,7 @@
}
/* rfc931 - return remote user name, given socket structures */
@@ -133,7 +133,7 @@
@@ -133,7 +133,7 @@ char *dest;
* Set up a timer so we won't get stuck while waiting for the server.
*/

View File

@ -1,6 +1,6 @@
--- percent_m.c
--- percent_m.c.orig
+++ percent_m.c
@@ -13,7 +13,7 @@
@@ -13,7 +13,7 @@ static char sccsid[] = "@(#) percent_m.c
#include <string.h>
extern int errno;
@ -9,7 +9,7 @@
extern char *sys_errlist[];
extern int sys_nerr;
#endif
@@ -29,11 +29,15 @@
@@ -29,11 +29,15 @@ char *ibuf;
while (*bp = *cp)
if (*cp == '%' && cp[1] == 'm') {

View File

@ -1,6 +1,6 @@
--- fix_options.c
--- fix_options.c.orig
+++ fix_options.c
@@ -53,7 +53,7 @@
@@ -53,7 +53,7 @@ struct request_info *request;
* XXX IPv6 support?
*/
sslen = sizeof(ss);

View File

@ -1,6 +1,6 @@
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -270,7 +270,6 @@
@@ -270,7 +270,6 @@ sock_hostname(struct host_info *host)
res = res->ai_next;
}
@ -8,7 +8,7 @@
if (res == NULL)
{
@@ -279,6 +278,7 @@
@@ -279,6 +278,7 @@ sock_hostname(struct host_info *host)
host->name,
inet_ntop2 (sin6->sin6_family, &sin6->sin6_addr));
strncpy(host->name, paranoid, sizeof(host->name));
@ -16,7 +16,7 @@
return;
}
@@ -289,7 +289,7 @@
@@ -289,7 +289,7 @@ sock_hostname(struct host_info *host)
host->name, res->ai_canonname,
inet_ntop2 (sin6->sin6_family, &sin6->sin6_addr));
}

View File

@ -1,6 +1,6 @@
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -128,6 +128,7 @@
@@ -128,6 +128,7 @@ extern int resident; /* > 0 if residen
#ifdef __STDC__
extern struct request_info *request_init(struct request_info *,...);
extern struct request_info *request_set(struct request_info *,...);

View File

@ -1,7 +1,5 @@
Index: rfc931.c
===================================================================
--- rfc931.c.orig 2009-10-30 20:14:38.000000000 +0100
+++ rfc931.c 2009-10-30 20:17:34.000000000 +0100
--- rfc931.c.orig
+++ rfc931.c
@@ -23,7 +23,7 @@ static char sccsid[] = "@(#) rfc931.c 1.
#include <setjmp.h>
#include <signal.h>
@ -11,10 +9,8 @@ Index: rfc931.c
/* Local stuff. */
#include "tcpd.h"
Index: safe_finger.c
===================================================================
--- safe_finger.c.orig 2009-10-30 20:14:36.000000000 +0100
+++ safe_finger.c 2009-10-30 20:32:39.000000000 +0100
--- safe_finger.c.orig
+++ safe_finger.c
@@ -19,13 +19,16 @@ static char sccsid[] = "@(#) safe_finger
#endif
@ -33,10 +29,8 @@ Index: safe_finger.c
extern void exit();
Index: tcpdchk.c
===================================================================
--- tcpdchk.c.orig 2009-10-30 20:14:36.000000000 +0100
+++ tcpdchk.c 2009-10-30 20:28:19.000000000 +0100
--- tcpdchk.c.orig
+++ tcpdchk.c
@@ -20,6 +20,7 @@ static char sccsid[] = "@(#) tcpdchk.c 1
/* System libraries. */
@ -53,10 +47,8 @@ Index: tcpdchk.c
extern int errno;
extern void exit();
Index: tcpdmatch.c
===================================================================
--- tcpdmatch.c.orig 2009-10-30 20:14:36.000000000 +0100
+++ tcpdmatch.c 2009-10-30 20:29:17.000000000 +0100
--- tcpdmatch.c.orig
+++ tcpdmatch.c
@@ -19,6 +19,7 @@ static char sccsid[] = "@(#) tcpdmatch.c
/* System libraries. */

View File

@ -16,9 +16,9 @@
;; If your libc doesn't have sockaddr_storage, try target `linux-old'.
================================================================================
--- fix_options.c
--- fix_options.c.orig
+++ fix_options.c
@@ -11,6 +11,9 @@
@@ -11,6 +11,9 @@ static char sccsid[] = "@(#) fix_options
#include <sys/types.h>
#include <sys/param.h>
@ -28,7 +28,7 @@
#include <netinet/in.h>
#include <netinet/in_systm.h>
#include <netinet/ip.h>
@@ -41,6 +44,22 @@
@@ -41,6 +44,22 @@ struct request_info *request;
unsigned int opt;
int optlen;
struct in_addr dummy;
@ -51,9 +51,9 @@
if ((ip = getprotobyname("ip")) != 0)
ipproto = ip->p_proto;
--- hosts_access.5
--- hosts_access.5.orig
+++ hosts_access.5
@@ -85,10 +85,17 @@
@@ -85,10 +85,17 @@ member of the specified netgroup. Netgro
for daemon process names or for client user names.
.IP \(bu
An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a
@ -72,9 +72,9 @@
.SH WILDCARDS
The access control language supports explicit wildcards:
.IP ALL
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -25,6 +25,9 @@
@@ -25,6 +25,9 @@ static char sccsid[] = "@(#) hosts_acces
#include <sys/types.h>
#include <sys/param.h>
@ -84,7 +84,7 @@
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
@@ -83,6 +86,10 @@
@@ -83,6 +86,10 @@ static int client_match();
static int host_match();
static int string_match();
static int masked_match();
@ -95,7 +95,7 @@
/* Size of logical line buffer. */
@@ -317,6 +324,13 @@
@@ -317,6 +324,13 @@ char *string;
{
int n;
@ -109,7 +109,7 @@
if (tok[0] == '.') { /* suffix */
n = strlen(string) - strlen(tok);
return (n > 0 && STR_EQ(tok, string + n));
@@ -327,20 +341,55 @@
@@ -327,20 +341,55 @@ char *string;
} else if (tok[(n = strlen(tok)) - 1] == '.') { /* prefix */
return (STRN_EQ(tok, string, n));
} else { /* exact match */
@ -165,7 +165,7 @@
/*
* Disallow forms other than dotted quad: the treatment that inet_addr()
@@ -352,8 +401,61 @@
@@ -352,8 +401,61 @@ char *string;
return (NO);
if ((net = dot_quad_addr(net_tok)) == INADDR_NONE
|| (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) {
@ -227,9 +227,9 @@
+ return YES;
+}
+#endif /* INET6 */
--- inetcf.c
--- inetcf.c.orig
+++ inetcf.c
@@ -26,6 +26,9 @@
@@ -26,6 +26,9 @@ extern void exit();
* guesses. Shorter names follow longer ones.
*/
char *inet_files[] = {
@ -239,9 +239,9 @@
"/private/etc/inetd.conf", /* NEXT */
"/etc/inet/inetd.conf", /* SYSV4 */
"/usr/etc/inetd.conf", /* IRIX?? */
--- misc.c
--- misc.c.orig
+++ misc.c
@@ -58,9 +58,31 @@
@@ -58,9 +58,31 @@ int delimiter;
{
char *cp;
@ -273,9 +273,9 @@
}
/* dot_quad_addr - convert dotted quad to internal form */
--- refuse.c
--- refuse.c.orig
+++ refuse.c
@@ -25,7 +25,12 @@
@@ -25,7 +25,12 @@ static char sccsid[] = "@(#) refuse.c 1.
void refuse(request)
struct request_info *request;
{
@ -288,9 +288,9 @@
clean_exit(request);
/* NOTREACHED */
}
--- rfc931.c
--- rfc931.c.orig
+++ rfc931.c
@@ -68,20 +68,50 @@
@@ -68,20 +68,50 @@ int sig;
/* rfc931 - return remote user name, given socket structures */
void rfc931(rmt_sin, our_sin, dest)
@ -341,7 +341,7 @@
/*
* Use one unbuffered stdio stream for writing to and for reading from
* the RFC931 etc. server. This is done because of a bug in the SunOS
@@ -92,7 +122,11 @@
@@ -92,7 +122,11 @@ char *dest;
* sockets.
*/
@ -353,7 +353,7 @@
setbuf(fp, (char *) 0);
/*
@@ -112,6 +146,25 @@
@@ -112,6 +146,25 @@ char *dest;
* addresses from the query socket.
*/
@ -379,7 +379,7 @@
our_query_sin = *our_sin;
our_query_sin.sin_port = htons(ANY_PORT);
rmt_query_sin = *rmt_sin;
@@ -121,6 +174,7 @@
@@ -121,6 +174,7 @@ char *dest;
sizeof(our_query_sin)) >= 0 &&
connect(fileno(fp), (struct sockaddr *) & rmt_query_sin,
sizeof(rmt_query_sin)) >= 0) {
@ -387,7 +387,7 @@
/*
* Send query to server. Neglect the risk that a 13-byte
@@ -129,8 +183,13 @@
@@ -129,8 +183,13 @@ char *dest;
*/
fprintf(fp, "%u,%u\r\n",
@ -401,7 +401,7 @@
fflush(fp);
/*
@@ -144,8 +203,13 @@
@@ -144,8 +203,13 @@ char *dest;
&& ferror(fp) == 0 && feof(fp) == 0
&& sscanf(buffer, "%u , %u : USERID :%*[^:]:%255s",
&rmt_port, &our_port, user) == 3
@ -415,9 +415,9 @@
/*
* Strip trailing carriage return. It is part of the
--- scaffold.c
--- scaffold.c.orig
+++ scaffold.c
@@ -20,6 +20,9 @@
@@ -20,6 +20,9 @@ static char sccs_id[] = "@(#) scaffold.c
#include <syslog.h>
#include <setjmp.h>
#include <string.h>
@ -427,7 +427,7 @@
#ifndef INADDR_NONE
#define INADDR_NONE (-1) /* XXX should be 0xffffffff */
@@ -57,6 +60,9 @@
@@ -57,6 +60,9 @@ struct hostent *hp;
/* void */ ;
if ((hb = (struct hostent_block *) malloc(sizeof(struct hostent_block)
@ -437,7 +437,7 @@
+ (hp->h_length + sizeof(char *)) * count)) == 0) {
fprintf(stderr, "Sorry, out of memory\n");
exit(1);
@@ -66,6 +72,11 @@
@@ -66,6 +72,11 @@ struct hostent *hp;
hb->host.h_addr_list = hb->addr_list;
hb->host.h_addr_list[count] = 0;
data = (char *) (hb->host.h_addr_list + count + 1);
@ -449,7 +449,7 @@
for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) {
hb->host.h_addr_list[count] = data + hp->h_length * count;
@@ -74,6 +85,100 @@
@@ -74,6 +85,100 @@ struct hostent *hp;
return (&hb->host);
}
@ -550,7 +550,7 @@
/* find_inet_addr - find all addresses for this host, result to free() */
struct hostent *find_inet_addr(host)
@@ -91,6 +196,15 @@
@@ -91,6 +196,15 @@ char *host;
h.h_addr_list = addr_list;
h.h_addr_list[0] = (char *) &addr;
h.h_length = sizeof(addr);
@ -566,7 +566,7 @@
return (dup_hostent(&h));
}
@@ -104,19 +218,33 @@
@@ -104,19 +218,33 @@ char *host;
tcpd_warn("%s: not an internet address", host);
return (0);
}
@ -600,7 +600,7 @@
}
/* check_dns - give each address thorough workout, return address count */
@@ -125,7 +253,13 @@
@@ -125,7 +253,13 @@ int check_dns(host)
char *host;
{
struct request_info request;
@ -614,7 +614,7 @@
struct hostent *hp;
int count;
char *addr;
@@ -135,10 +269,30 @@
@@ -135,10 +269,30 @@ char *host;
request_init(&request, RQ_CLIENT_SIN, &sin, 0);
sock_methods(&request);
memset((char *) &sin, 0, sizeof(sin));
@ -645,9 +645,9 @@
/*
* Force host name and address conversions. Use the request structure
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -30,6 +30,12 @@
@@ -30,6 +30,12 @@ static char sccsid[] = "@(#) socket.c 1.
#include <syslog.h>
#include <string.h>
@ -660,7 +660,7 @@
extern char *inet_ntoa();
/* Local stuff. */
@@ -74,8 +80,13 @@
@@ -74,8 +80,13 @@ char *name;
void sock_host(request)
struct request_info *request;
{
@ -674,7 +674,7 @@
int len;
char buf[BUFSIZ];
int fd = request->fd;
@@ -104,7 +115,11 @@
@@ -104,7 +115,11 @@ struct request_info *request;
memset(buf, 0 sizeof(buf));
#endif
}
@ -686,7 +686,7 @@
/*
* Determine the server binding. This is used for client username
@@ -117,7 +132,11 @@
@@ -117,7 +132,11 @@ struct request_info *request;
tcpd_warn("getsockname: %m");
return;
}
@ -698,7 +698,7 @@
}
/* sock_hostaddr - map endpoint address to printable form */
@@ -125,10 +144,33 @@
@@ -125,10 +144,33 @@ struct request_info *request;
void sock_hostaddr(host)
struct host_info *host;
{
@ -732,7 +732,7 @@
}
/* sock_hostname - map endpoint address to host name */
@@ -136,8 +178,21 @@
@@ -136,8 +178,21 @@ struct host_info *host;
void sock_hostname(host)
struct host_info *host;
{
@ -754,7 +754,7 @@
int i;
/*
@@ -147,11 +202,42 @@
@@ -147,11 +202,42 @@ struct host_info *host;
* have to special-case 0.0.0.0, in order to avoid false alerts from the
* host name/address checking code below.
*/
@ -797,7 +797,7 @@
/*
* Verify that the address is a member of the address list returned
@@ -166,15 +252,53 @@
@@ -166,15 +252,53 @@ struct host_info *host;
* we're in big trouble anyway.
*/
@ -851,7 +851,7 @@
} else if (STR_NE(host->name, hp->h_name)
&& STR_NE(host->name, "localhost")) {
@@ -198,10 +322,19 @@
@@ -198,10 +322,19 @@ struct host_info *host;
*/
for (i = 0; hp->h_addr_list[i]; i++) {
@ -871,7 +871,7 @@
}
/*
@@ -210,10 +343,20 @@
@@ -210,10 +343,20 @@ struct host_info *host;
* server.
*/
@ -892,7 +892,7 @@
}
}
@@ -223,7 +366,11 @@
@@ -223,7 +366,11 @@ static void sock_sink(fd)
int fd;
{
char buf[BUFSIZ];
@ -904,9 +904,9 @@
int size = sizeof(sin);
/*
--- tcpd.c
--- tcpd.c.orig
+++ tcpd.c
@@ -24,6 +24,7 @@
@@ -24,6 +24,7 @@ static char sccsid[] = "@(#) tcpd.c 1.10
#include <stdio.h>
#include <syslog.h>
#include <string.h>
@ -914,7 +914,7 @@
#ifndef MAXPATHNAMELEN
#define MAXPATHNAMELEN BUFSIZ
@@ -120,7 +121,12 @@
@@ -120,7 +121,12 @@ char **argv;
/* Report request and invoke the real daemon program. */
@ -927,7 +927,7 @@
closelog();
(void) execv(path, argv);
syslog(LOG_ERR, "error: cannot execute %s: %m", path);
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -17,7 +17,11 @@
struct host_info {
@ -941,9 +941,9 @@
struct t_unitdata *unit; /* TLI transport address or 0 */
struct request_info *request; /* for shared information */
};
--- tcpdchk.c
--- tcpdchk.c.orig
+++ tcpdchk.c
@@ -22,6 +22,9 @@
@@ -22,6 +22,9 @@ static char sccsid[] = "@(#) tcpdchk.c 1
#include <sys/types.h>
#include <sys/stat.h>
@ -953,7 +953,7 @@
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
@@ -397,6 +400,26 @@
@@ -397,6 +400,26 @@ char *pat;
}
}
@ -980,7 +980,7 @@
/* check_host - criticize host pattern */
static int check_host(pat)
@@ -423,14 +446,27 @@
@@ -423,14 +446,27 @@ char *pat;
#endif
#endif
} else if (mask = split_at(pat, '/')) { /* network/netmask */
@ -1008,9 +1008,9 @@
} else if (NOT_INADDR(pat)) { /* internet name */
if (pat[strlen(pat) - 1] == '.') {
tcpd_warn("%s: domain or host name ends in dot", pat);
--- tcpdmatch.c
--- tcpdmatch.c.orig
+++ tcpdmatch.c
@@ -68,8 +68,15 @@
@@ -68,8 +68,15 @@ char **argv;
int ch;
char *inetcf = 0;
int count;
@ -1026,7 +1026,7 @@
struct stat st;
/*
@@ -173,12 +180,35 @@
@@ -173,12 +180,35 @@ char **argv;
if ((hp = find_inet_addr(server)) == 0)
exit(1);
memset((char *) &server_sin, 0, sizeof(server_sin));
@ -1062,7 +1062,7 @@
/*
* Force evaluation of server host name and address. Host name
@@ -230,12 +260,35 @@
@@ -230,12 +260,35 @@ char **argv;
if ((hp = find_inet_addr(client)) == 0)
exit(1);
memset((char *) &client_sin, 0, sizeof(client_sin));
@ -1098,9 +1098,9 @@
/*
* Force evaluation of client host name and address. Host name
--- update.c
--- update.c.orig
+++ update.c
@@ -46,10 +46,18 @@
@@ -46,10 +46,18 @@ va_list ap;
request->fd = va_arg(ap, int);
continue;
case RQ_CLIENT_SIN:
@ -1119,9 +1119,9 @@
continue;
/*
--- workarounds.c
--- workarounds.c.orig
+++ workarounds.c
@@ -166,11 +166,22 @@
@@ -166,11 +166,22 @@ struct sockaddr *sa;
int *len;
{
int ret;

View File

@ -13,7 +13,7 @@
# November , 2002
#
================================================================================
--- Makefile
--- Makefile.orig
+++ Makefile
@@ -1,5 +1,7 @@
# @(#) Makefile 1.23 97/03/21 19:27:20
@ -23,7 +23,7 @@
what:
@echo
@echo "Usage: edit the REAL_DAEMON_DIR definition in the Makefile then:"
@@ -670,7 +672,7 @@
@@ -670,7 +672,7 @@ CFLAGS = -O2 -pipe -DFACILITY=$(FACILITY
LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \
hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \
$(FROM_OBJ) fix_options.o socket.o tli.o workarounds.o \
@ -32,7 +32,7 @@
FROM_OBJ= fromhost.o
@@ -683,6 +685,7 @@
@@ -683,6 +685,7 @@ KIT = README miscd.c tcpd.c fromhost.c h
tli-sequent.h misc.c diag.c ncr.c tcpdchk.c percent_m.c \
myvsyslog.c mystdarg.h printf.ck README.IRIX Banners.Makefile \
refuse.c tcpdchk.8 setenv.c inetcf.c inetcf.h scaffold.c \
@ -40,7 +40,7 @@
scaffold.h tcpdmatch.8 README.NIS
LIB = libwrap.a
@@ -812,6 +815,7 @@
@@ -812,6 +815,7 @@ printfck:
# Internal compilation dependencies.
@ -48,9 +48,9 @@
clean_exit.o: cflags
clean_exit.o: tcpd.h
diag.o: cflags
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -85,11 +85,6 @@
@@ -85,11 +85,6 @@ static int server_match();
static int client_match();
static int host_match();
static int string_match();
@ -62,7 +62,7 @@
/* Size of logical line buffer. */
@@ -308,15 +303,17 @@
@@ -308,15 +303,17 @@ struct host_info *host;
} else if (STR_EQ(tok, "LOCAL")) { /* local: no dots in name */
char *name = eval_hostname(host);
return (strchr(name, '.') == 0 && HOSTNAME_KNOWN(name));
@ -83,7 +83,7 @@
static int string_match(tok, string)
char *tok;
@@ -324,13 +321,6 @@
@@ -324,13 +321,6 @@ char *string;
{
int n;
@ -97,7 +97,7 @@
if (tok[0] == '.') { /* suffix */
n = strlen(string) - strlen(tok);
return (n > 0 && STR_EQ(tok, string + n));
@@ -340,122 +330,65 @@
@@ -340,122 +330,65 @@ char *string;
return (STR_NE(string, unknown));
} else if (tok[(n = strlen(tok)) - 1] == '.') { /* prefix */
return (STRN_EQ(tok, string, n));
@ -274,7 +274,7 @@
+#endif
}
-#endif /* INET6 */
--- ip6utils.c
--- /dev/null
+++ ip6utils.c
@@ -0,0 +1,152 @@
+#include <sys/types.h>
@ -429,7 +429,7 @@
+
+ return 0;
+}
--- ip6utils.h
--- /dev/null
+++ ip6utils.h
@@ -0,0 +1,33 @@
+#ifndef IP6UTILS_H
@ -465,9 +465,9 @@
+int apply_v6_prefix (struct in6_addr *src, int prefixlen);
+
+#endif /* IP6UTILS_H */
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -25,16 +25,12 @@
@@ -25,16 +25,12 @@ static char sccsid[] = "@(#) socket.c 1.
#include <sys/param.h>
#include <sys/socket.h>
#include <netinet/in.h>
@ -486,7 +486,7 @@
extern char *inet_ntoa();
@@ -65,10 +61,10 @@
@@ -65,10 +61,10 @@ char *name;
*/
if (strchr(name, '.') == 0 || strlen(name) >= MAXHOSTNAMELEN - 1) {
@ -500,7 +500,7 @@
}
}
@@ -104,15 +100,15 @@
@@ -104,15 +100,15 @@ struct request_info *request;
len = sizeof(client);
if (getpeername(fd, (struct sockaddr *) & client, &len) < 0) {
@ -524,7 +524,7 @@
#endif
}
#ifdef INET6
@@ -129,8 +125,8 @@
@@ -129,8 +125,8 @@ struct request_info *request;
len = sizeof(server);
if (getsockname(fd, (struct sockaddr *) & server, &len) < 0) {
@ -535,7 +535,7 @@
}
#ifdef INET6
request->server->sin = (struct sockaddr *)&server;
@@ -150,18 +146,18 @@
@@ -150,18 +146,18 @@ struct host_info *host;
int alen;
if (!sin)
@ -565,7 +565,7 @@
}
host->addr[0] = '\0';
inet_ntop(sin->sa_family, ap, host->addr, sizeof(host->addr));
@@ -169,30 +165,139 @@
@@ -169,30 +165,139 @@ struct host_info *host;
struct sockaddr_in *sin = host->sin;
if (sin != 0)
@ -720,7 +720,7 @@
int i;
/*
@@ -202,163 +307,76 @@
@@ -202,163 +307,76 @@ struct host_info *host;
* have to special-case 0.0.0.0, in order to avoid false alerts from the
* host name/address checking code below.
*/
@ -943,7 +943,7 @@
/* sock_sink - absorb unreceived IP datagram */
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -10,6 +10,8 @@
#include <sys/socket.h>

View File

@ -1,6 +1,6 @@
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -354,7 +354,26 @@
@@ -354,7 +354,26 @@ char *string;
/* If prefix was given, handle it */
if ((mask = split_at(token, '/')) != 0)
{

View File

@ -1,6 +1,6 @@
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -328,8 +328,6 @@
@@ -328,8 +328,6 @@ char *string;
return (YES);
} else if (STR_EQ(tok, "KNOWN")) { /* not unknown */
return (STR_NE(string, unknown));
@ -9,7 +9,7 @@
} else if (STR_EQ(tok, string)) /* exact match */
return (YES);
#ifdef INET6
@@ -337,11 +335,31 @@
@@ -337,11 +335,31 @@ char *string;
{
/* For simplicity we convert everything to IPv6 (or v4 mapped) */
struct in6_addr pat, addr;

View File

@ -1,6 +1,6 @@
--- socket.c
--- socket.c.orig
+++ socket.c
@@ -282,7 +282,7 @@
@@ -282,7 +282,7 @@ sock_hostname(struct host_info *host)
return;
}

View File

@ -1,6 +1,6 @@
--- fakelog.c
--- fakelog.c.orig
+++ fakelog.c
@@ -16,7 +16,7 @@
@@ -16,7 +16,7 @@ static char sccsid[] = "@(#) fakelog.c 1
/* openlog - dummy */
/* ARGSUSED */
@ -9,7 +9,7 @@
openlog(name, logopt, facility)
char *name;
int logopt;
@@ -26,7 +26,7 @@
@@ -26,7 +26,7 @@ int facility;
}
/* vsyslog - format one record */
@ -18,7 +18,7 @@
vsyslog(severity, fmt, ap)
int severity;
char *fmt;
@@ -42,7 +42,7 @@
@@ -42,7 +42,7 @@ va_list ap;
/* syslog - format one record */
/* VARARGS */
@ -27,7 +27,7 @@
VARARGS(syslog, int, severity)
{
va_list ap;
@@ -55,7 +55,7 @@
@@ -55,7 +55,7 @@ VARARGS(syslog, int, severity)
}
/* closelog - dummy */
@ -36,9 +36,9 @@
closelog()
{
/* void */
--- fix_options.c
--- fix_options.c.orig
+++ fix_options.c
@@ -31,7 +31,7 @@
@@ -31,7 +31,7 @@ static char sccsid[] = "@(#) fix_options
#define BUFFER_SIZE 512 /* Was: BUFSIZ */
/* fix_options - get rid of IP-level socket options */
@ -47,9 +47,9 @@
fix_options(request)
struct request_info *request;
{
--- options.c
--- options.c.orig
+++ options.c
@@ -541,6 +541,7 @@
@@ -541,6 +541,7 @@ char *name;
return (t->value);
tcpd_jump("bad syslog facility or severity: \"%s\"", name);
/* NOTREACHED */
@ -57,9 +57,9 @@
}
/* severity_option - change logging severity for this event (Dave Mitchell) */
--- tcpd.c
--- tcpd.c.orig
+++ tcpd.c
@@ -132,4 +132,5 @@
@@ -132,4 +132,5 @@ char **argv;
syslog(LOG_ERR, "error: cannot execute %s: %m", path);
clean_exit(&request);
/* NOTREACHED */

View File

@ -1,15 +1,15 @@
--- Makefile
--- Makefile.orig
+++ Makefile
@@ -673,7 +673,7 @@
@@ -673,7 +673,7 @@ SHLIBFLAGS = -Lshared -lwrap
shared/%.o: %.c
$(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@
-CFLAGS = -O2 -pipe -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
+CFLAGS = $(RPM_OPT_FLAGS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
+CFLAGS = $(RPM_OPT_FLAGS) $(shell getconf LFS_CFLAGS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \
-DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \
@@ -730,13 +730,13 @@
@@ -730,13 +730,13 @@ $(SHLIB): $(SHLIB_OBJ)
ln -s $(notdir $(SHLIBSOMAJ)) $(SHLIBSO)
tcpd: tcpd.o $(SHLIB)
@ -25,7 +25,7 @@
TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o
@@ -744,7 +744,7 @@
@@ -744,7 +744,7 @@ tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB)
$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS)
try-from: try-from.o fakelog.o $(SHLIB)

View File

@ -1,6 +1,6 @@
--- clean_exit.c
--- clean_exit.c.orig
+++ clean_exit.c
@@ -13,6 +13,8 @@
@@ -13,6 +13,8 @@ static char sccsid[] = "@(#) clean_exit.
#endif
#include <stdio.h>
@ -9,9 +9,9 @@
extern void exit();
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -31,6 +31,8 @@
@@ -31,6 +31,8 @@ static char sccsid[] = "@(#) hosts_acces
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
@ -20,9 +20,9 @@
#include <syslog.h>
#include <ctype.h>
#include <errno.h>
--- inetcf.c
--- inetcf.c.orig
+++ inetcf.c
@@ -88,7 +88,7 @@
@@ -88,7 +88,7 @@ char *conf;
} else {
for (i = 0; inet_files[i] && (fp = fopen(inet_files[i], "r")) == 0; i++)
/* void */ ;
@ -31,7 +31,7 @@
fprintf(stderr, "Cannot find your inetd.conf or tlid.conf file.\n");
fprintf(stderr, "Please specify its location.\n");
exit(1);
--- ip6utils.c
--- ip6utils.c.orig
+++ ip6utils.c
@@ -2,6 +2,7 @@
#include <sys/socket.h>
@ -41,9 +41,9 @@
#include <errno.h>
#include "ip6utils.h"
--- options.c
--- options.c.orig
+++ options.c
@@ -41,6 +41,8 @@
@@ -41,6 +41,8 @@ static char sccsid[] = "@(#) options.c 1
#include <netinet/in.h>
#include <netdb.h>
#include <stdio.h>
@ -52,9 +52,9 @@
#include <syslog.h>
#include <pwd.h>
#include <grp.h>
--- percent_x.c
--- percent_x.c.orig
+++ percent_x.c
@@ -18,6 +18,8 @@
@@ -18,6 +18,8 @@ static char sccsid[] = "@(#) percent_x.c
#include <stdio.h>
#include <syslog.h>
@ -63,9 +63,9 @@
#include <string.h>
extern void exit();
--- shell_cmd.c
--- shell_cmd.c.orig
+++ shell_cmd.c
@@ -15,9 +15,13 @@
@@ -15,9 +15,13 @@ static char sccsid[] = "@(#) shell_cmd.c
/* System libraries. */
#include <sys/types.h>
@ -79,9 +79,9 @@
#include <syslog.h>
#include <string.h>
--- update.c
--- update.c.orig
+++ update.c
@@ -21,6 +21,7 @@
@@ -21,6 +21,7 @@ static char sccsid[] = "@(#) update.c 1.
#include <stdio.h>
#include <syslog.h>

View File

@ -1,6 +1,6 @@
--- Makefile
--- Makefile.orig
+++ Makefile
@@ -145,9 +145,9 @@
@@ -145,9 +145,9 @@ freebsd:
linux:
@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
@ -12,7 +12,7 @@
# This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x.
hpux hpux8 hpux9 hpux10:
@@ -660,7 +660,18 @@
@@ -660,7 +660,18 @@ HOSTNAME= -DALWAYS_HOSTNAME
# Protection against weird shells or weird make programs.
SHELL = /bin/sh
@ -32,7 +32,7 @@
CFLAGS = -O2 -pipe -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
@@ -669,11 +680,16 @@
@@ -669,11 +680,16 @@ CFLAGS = -O2 -pipe -DFACILITY=$(FACILITY
$(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \
$(VSYSLOG)
@ -49,7 +49,7 @@
FROM_OBJ= fromhost.o
KIT = README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \
@@ -688,9 +704,8 @@
@@ -688,9 +704,8 @@ KIT = README miscd.c tcpd.c fromhost.c h
ip6utils.c ip6utils.h \
scaffold.h tcpdmatch.8 README.NIS
@ -60,7 +60,7 @@
# Invalidate all object files when the compiler options (CFLAGS) have changed.
@@ -701,33 +716,40 @@
@@ -701,33 +716,40 @@ config-check:
then rm /tmp/cflags.$$$$ ; \
else mv /tmp/cflags.$$$$ cflags ; \
fi >/dev/null 2>/dev/null
@ -113,7 +113,7 @@
shar: $(KIT)
@shar $(KIT)
@@ -743,7 +765,8 @@
@@ -743,7 +765,8 @@ archive:
clean:
rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \
@ -123,16 +123,16 @@
tidy: clean
chmod -R a+r .
@@ -890,5 +913,6 @@
@@ -890,5 +913,6 @@ update.o: cflags
update.o: mystdarg.h
update.o: tcpd.h
vfprintf.o: cflags
+weak_symbols.o: tcpd.h
workarounds.o: cflags
workarounds.o: tcpd.h
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -106,8 +106,14 @@
@@ -106,8 +106,14 @@ extern unsigned long dot_quad_addr(); /*
/* Global variables. */
@ -147,7 +147,7 @@
extern char *hosts_allow_table; /* for verification mode redirection */
extern char *hosts_deny_table; /* for verification mode redirection */
extern int hosts_access_verbose; /* for verbose matching mode */
--- weak_symbols.c
--- /dev/null
+++ weak_symbols.c
@@ -0,0 +1,11 @@
+/*

View File

@ -1,6 +1,6 @@
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -126,10 +126,15 @@
@@ -126,10 +126,15 @@ extern int resident; /* > 0 if residen
*/
#ifdef __STDC__

View File

@ -1,6 +1,6 @@
--- inetcf.c
--- inetcf.c.orig
+++ inetcf.c
@@ -61,7 +61,7 @@
@@ -61,7 +61,7 @@ char *inet_cfg(conf)
char *conf;
{
char buf[BUFSIZ];

View File

@ -1,6 +1,6 @@
--- Makefile
--- Makefile.orig
+++ Makefile
@@ -44,7 +44,7 @@
@@ -44,7 +44,7 @@ what:
#REAL_DAEMON_DIR=/usr/etc
#
# SysV.4 Solaris 2.x OSF AIX
@ -9,7 +9,7 @@
#
# BSD 4.4
#REAL_DAEMON_DIR=/usr/libexec
@@ -143,8 +143,9 @@
@@ -143,8 +143,9 @@ freebsd:
linux:
@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
@ -21,7 +21,7 @@
# This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x.
hpux hpux8 hpux9 hpux10:
@@ -229,7 +230,7 @@
@@ -229,7 +230,7 @@ tandem:
# Amdahl UTS 2.1.5 (Richard.Richmond@bridge.bst.bls.com)
uts215:
@ -30,7 +30,7 @@
LIBS="-lsocket" RANLIB=echo \
ARFLAGS=rv AUX_OBJ=setenv.o NETGROUP=-DNO_NETGROUP TLI= all
@@ -472,7 +473,7 @@
@@ -472,7 +473,7 @@ BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS
# If your system supports vsyslog(), comment out the following definition.
# If in doubt leave it in, it won't harm.
@ -39,7 +39,7 @@
# End of the system dependencies.
#################################
@@ -491,7 +492,7 @@
@@ -491,7 +492,7 @@ VSYSLOG = -Dvsyslog=myvsyslog
# Uncomment the next definition to turn on the language extensions
# (examples: allow, deny, banners, twist and spawn).
#
@ -48,7 +48,7 @@
################################################################
# Optional: Changing the default disposition of logfile records
@@ -514,7 +515,7 @@
@@ -514,7 +515,7 @@ VSYSLOG = -Dvsyslog=myvsyslog
#
# The LOG_XXX names below are taken from the /usr/include/syslog.h file.
@ -57,7 +57,7 @@
# The syslog priority at which successful connections are logged.
@@ -531,7 +532,7 @@
@@ -531,7 +532,7 @@ SEVERITY= LOG_INFO # LOG_INFO is normall
# and with Solaris < 2.4. APPEND_DOT will not work with hostnames taken
# from /etc/hosts or from NIS maps. It does work with DNS through NIS.
#
@ -66,7 +66,7 @@
##################################################
# Optional: Always attempt remote username lookups
@@ -610,7 +611,7 @@
@@ -610,7 +611,7 @@ TABLES = -DHOSTS_DENY=\"/etc/hosts.deny\
# Paranoid mode implies hostname lookup. In order to disable hostname
# lookups altogether, see the next section.
@ -75,7 +75,7 @@
########################################
# Optional: turning off hostname lookups
@@ -649,7 +650,7 @@
@@ -649,7 +650,7 @@ HOSTNAME= -DALWAYS_HOSTNAME
# source-routed traffic in the kernel. Examples: 4.4BSD derivatives,
# Solaris 2.x, and Linux. See your system documentation for details.
#
@ -84,7 +84,7 @@
## End configuration options
############################
@@ -659,12 +660,12 @@
@@ -659,12 +660,12 @@ HOSTNAME= -DALWAYS_HOSTNAME
SHELL = /bin/sh
.c.o:; $(CC) $(CFLAGS) -c $*.c
@ -99,7 +99,7 @@
LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \
hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \
--- README.ipv6
--- /dev/null
+++ README.ipv6
@@ -0,0 +1,17 @@
+;; IPv6 patch for tcp_wrappers_7.6 1.6
@ -119,9 +119,9 @@
+;; For Linux users:
+;; If your libc doesn't have sockaddr_storage, try target `linux-old'.
+
--- hosts_access.c
--- hosts_access.c.orig
+++ hosts_access.c
@@ -33,6 +33,7 @@
@@ -33,6 +33,7 @@ static char sccsid[] = "@(#) hosts_acces
#include <errno.h>
#include <setjmp.h>
#include <string.h>
@ -129,7 +129,7 @@
extern char *fgets();
extern int errno;
@@ -89,6 +90,33 @@
@@ -89,6 +90,33 @@ static int masked_match();
/* hosts_access - host access control facility */
@ -163,9 +163,9 @@
int hosts_access(request)
struct request_info *request;
{
--- safe_finger.c
--- safe_finger.c.orig
+++ safe_finger.c
@@ -31,7 +31,7 @@
@@ -31,7 +31,7 @@ extern void exit();
/* Local stuff */
@ -174,9 +174,9 @@
#define TIME_LIMIT 60 /* Do not keep listinging forever */
#define INPUT_LENGTH 100000 /* Do not keep listinging forever */
--- scaffold.c
--- scaffold.c.orig
+++ scaffold.c
@@ -180,10 +180,17 @@
@@ -180,10 +180,17 @@ struct request_info *request;
/* ARGSUSED */
@ -197,7 +197,7 @@
}
/* check_path - examine accessibility */
--- tcpd.h
--- tcpd.h.orig
+++ tcpd.h
@@ -4,6 +4,12 @@
* Author: Wietse Venema, Eindhoven University of Technology, The Netherlands.
@ -212,7 +212,7 @@
/* Structure to describe one communications endpoint. */
#define STRING_LENGTH 128 /* hosts, users, processes */
@@ -61,11 +67,26 @@
@@ -61,11 +67,26 @@ extern char paranoid[];
/* Global functions. */
#if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT)
@ -239,7 +239,7 @@
extern int hosts_access(); /* access control */
extern void shell_cmd(); /* execute shell command */
extern char *percent_x(); /* do %<char> expansion */
@@ -75,6 +96,7 @@
@@ -75,6 +96,7 @@ extern void refuse(); /* clean up and
extern char *xgets(); /* fgets() on steroids */
extern char *split_at(); /* strchr() and split */
extern unsigned long dot_quad_addr(); /* restricted inet_addr() */
@ -247,7 +247,7 @@
/* Global variables. */
@@ -117,28 +139,47 @@
@@ -117,28 +139,47 @@ extern struct request_info *request_set(
* host_info structures serve as caches for the lookup results.
*/
@ -295,7 +295,7 @@
/*
* Problem reporting interface. Additional file/line context is reported
@@ -178,42 +219,74 @@
@@ -178,42 +219,74 @@ extern struct tcpd_context tcpd_context;
* behavior.
*/

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Sun Apr 22 01:18:07 UTC 2012 - crrodriguez@opensuse.org
- Refresh all patches
- Also, pass getconf LFS_CFLAGS into CFLAGS
-------------------------------------------------------------------
Wed Oct 5 15:03:33 UTC 2011 - uli@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package tcpd
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -15,24 +15,21 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: tcpd
Url: ftp://ftp.porcupine.org/pub/security/index.html
License: BSD-3-Clause
Group: Productivity/Networking/System
Provides: nkitb:/usr/sbin/tcpd
BuildRequires: linux-kernel-headers
AutoReqProv: on
# bug437293
%ifarch ppc64
Obsoletes: tcpd-64bit
%endif
#
Version: 7.6
Release: 859
Release: 0
Summary: A security wrapper for TCP daemons
License: BSD-3-Clause
Group: Productivity/Networking/System
Source: tcp_wrappers_%{version}.tar.bz2
Source2: baselibs.conf
Patch0: tcp_wrappers_%{version}.diff
@ -78,7 +75,6 @@ Authors:
Wietse Venema <wietse@wzv.win.tue.nl>
%package devel
License: BSD-3-Clause
Summary: Include Files and Libraries for the TCP wrapper library
Group: Productivity/Networking/System
Requires: %{name} = %{version}