NetBSD Problem Report #30575

From heas@shrubbery.net  Wed Jun 22 22:43:25 2005
Return-Path: <heas@shrubbery.net>
Received: from guelah.shrubbery.net (guelah.shrubbery.net [198.58.5.1])
	by narn.netbsd.org (Postfix) with ESMTP id 6172B63B104
	for <gnats-bugs@gnats.NetBSD.org>; Wed, 22 Jun 2005 22:43:25 +0000 (UTC)
Message-Id: <20050622224319.038D4864C7@guelah.shrubbery.net>
Date: Wed, 22 Jun 2005 22:43:19 +0000 (UTC)
From: heas@shrubbery.net
Reply-To: heas@shrubbery.net
To: gnats-bugs@netbsd.org
Subject: tripwire patch for solaris doors
X-Send-Pr-Version: 3.95

>Number:         30575
>Category:       pkg
>Synopsis:       security/tripwire patches for solaris doors
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    solaris-pkg-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jun 22 22:44:01 +0000 2005
>Last-Modified:  Sun Mar 27 18:32:41 +0000 2011
>Originator:     john heasley
>Release:        SunOS 5.9
>Organization:

>Environment:
Solaris 9
>Description:
tripwire should treat solaris doors like named sockets/pipes, instead of
exiting.

There is a more recent version of tripwire, but I didnt check it out.  It
might have these fixes.  Nor have I attempted to feed these changes back to
the maintainers.
>How-To-Repeat:

>Fix:

Index: patches/patch-ae
===================================================================
RCS file: /cvsroot/pkgsrc/security/tripwire/patches/patch-ae,v
retrieving revision 1.1
diff -u -r1.1 patch-ae
--- patches/patch-ae	5 Dec 2003 05:40:32 -0000	1.1
+++ patches/patch-ae	22 Jun 2005 20:01:07 -0000
@@ -1,6 +1,6 @@
-$NetBSD: patch-ae,v 1.1 2003/12/05 05:40:32 ben Exp $
+$NetBSD$

---- src/config.parse.c.orig	1994-07-20 18:03:26.000000000 -0700
+--- src/config.parse.c.orig	1994-07-21 01:03:26.000000000 +0000
 +++ src/config.parse.c
 @@ -55,7 +55,6 @@ static char rcsid[] = "$Id: config.parse
  #endif
@@ -39,3 +39,13 @@
  	sprintf(s, "tripwire: Couldn't open config file '%s'", configfile);
  	perror(s);
  	exit(1);
+@@ -636,6 +637,9 @@ XENIX_CONT: ;
+ /* Foolish Apollos define S_IFSOCK same as S_IFIFO in /bsd4.3/usr/include/sys/stat.h */
+ 	  case S_IFSOCK:
+ #endif
++#ifdef S_IFDOOR
++	  case S_IFDOOR:
++#endif
+ #endif
+ 	    (void) list_setflag(filename, FLAG_NOOPEN, pp_list);
+ 	    break;
Index: patches/patch-af
===================================================================
RCS file: /cvsroot/pkgsrc/security/tripwire/patches/patch-af,v
retrieving revision 1.2
diff -u -r1.2 patch-af
--- patches/patch-af	9 Dec 2003 19:17:37 -0000	1.2
+++ patches/patch-af	22 Jun 2005 20:01:07 -0000
@@ -1,6 +1,6 @@
-$NetBSD: patch-af,v 1.2 2003/12/09 19:17:37 ben Exp $
+$NetBSD$

---- src/dbase.build.c.orig	1994-07-25 08:24:09.000000000 -0700
+--- src/dbase.build.c.orig	1994-07-25 15:24:09.000000000 +0000
 +++ src/dbase.build.c
 @@ -66,7 +66,6 @@ static char rcsid[] = "$Id: dbase.build.
  int files_scanned_num = 0;
@@ -47,7 +47,17 @@
      if ((fpw = fopen(database, "w")) == NULL)
  	die_with_err("Hint: Maybe the database directory '%s' doesn't exist?  fopen()", database);

-@@ -367,10 +373,10 @@ printf("--(contents)-->%s\n", entry); 
+@@ -316,6 +322,9 @@ printf("database_build(): --(will update
+ /* Foolish Apollos define S_IFSOCK same as S_IFIFO in /bsd4.3/usr/include/sys/stat.h */
+ 	      case S_IFSOCK:
+ #endif
++#ifdef S_IFDOOR
++	      case S_IFDOOR:
++#endif
+ #endif
+ 		(void) list_setflag(filename, FLAG_NOOPEN, pp_list);
+ 		break;
+@@ -367,10 +376,10 @@ printf("--(contents)-->%s\n", entry); 
  	  die_with_err("database_build: list_close() failed!\n", (char *) NULL);
      }

@@ -61,7 +71,7 @@
  	rewind(fptempdbase);
      } else {
  	fclose(fpw);
-@@ -413,7 +419,7 @@ database_record_write (fpw, filename, fl
+@@ -413,7 +422,7 @@ database_record_write (fpw, filename, fl
      /* filename, entrynum, ignore, mode, inode, nlinks, uid, gid, size,
       *		access, modify, ctime, {sig0, sig1, ..., sig9}
       */
@@ -70,7 +80,7 @@

      /* initialize our temporary file */
      if (fdsymlink == -1) {
-@@ -541,7 +547,7 @@ SKIPPED_SIGS:
+@@ -541,7 +550,7 @@ SKIPPED_SIGS:
  	fprintf(fpw, format, filename_escape(filename), (int32)entrynum, ignorevec,
  	    (int32)statbuf->st_mode, (int32)statbuf->st_ino,
  	    (int32)statbuf->st_nlink, (int32)statbuf->st_uid,
Index: patches/patch-ah
===================================================================
RCS file: /cvsroot/pkgsrc/security/tripwire/patches/patch-ah,v
retrieving revision 1.1
diff -u -r1.1 patch-ah
--- patches/patch-ah	5 Dec 2003 05:40:32 -0000	1.1
+++ patches/patch-ah	22 Jun 2005 20:01:07 -0000
@@ -1,6 +1,6 @@
-$NetBSD: patch-ah,v 1.1 2003/12/05 05:40:32 ben Exp $
+$NetBSD$

---- src/preen.c.orig	1994-07-25 08:24:11.000000000 -0700
+--- src/preen.c.orig	1994-07-25 15:24:11.000000000 +0000
 +++ src/preen.c
 @@ -98,9 +98,6 @@ update_gather(interactive, ppp_updateent
      if (!specified_configmode)
@@ -12,3 +12,13 @@
      SPDEBUG(3) printf("*** leaving update_gather()\n");

      list_reset(&configentry_list);
+@@ -637,6 +634,9 @@ printf("olddbasefile_load: %s: %s", key,
+ /* Foolish Apollos define S_IFSOCK same as S_IFIFO in /bsd4.3/usr/include/sys/stat.h */
+ 	      case S_IFSOCK:
+ #endif
++#ifdef S_IFDOOR
++	      case S_IFDOOR:
++#endif
+ #endif
+ 		(void) list_setflag(key, FLAG_NOOPEN, &olddbase_list);
+ 		break;

>Release-Note:

>Audit-Trail:
[20110327 shattered] edited Environment: field

Responsible-Changed-From-To: pkg-manager->solaris-pkg-people
Responsible-Changed-By: wiz@netbsd.org
Responsible-Changed-When: Thu, 23 Jun 2005 17:13:06 +0000
Responsible-Changed-Why:
Solaris pkgsrc patch.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.