summaryrefslogtreecommitdiff
path: root/package/osiris/patches
diff options
context:
space:
mode:
Diffstat (limited to 'package/osiris/patches')
-rw-r--r--package/osiris/patches/01-configure-cross.patch22
-rw-r--r--package/osiris/patches/02-osirisd-pidfile.patch68
-rw-r--r--package/osiris/patches/03-openssl-0.9.8+.patch16
-rw-r--r--package/osiris/patches/mod_if.patch392
-rw-r--r--package/osiris/patches/mod_nvram.patch213
-rw-r--r--package/osiris/patches/mod_uptime.patch243
6 files changed, 0 insertions, 954 deletions
diff --git a/package/osiris/patches/01-configure-cross.patch b/package/osiris/patches/01-configure-cross.patch
deleted file mode 100644
index 025a3f8419..0000000000
--- a/package/osiris/patches/01-configure-cross.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- osiris-4.1.8-orig/configure 2005-04-13 15:22:13.000000000 +0200
-+++ osiris-4.1.8-1/configure 2005-04-22 23:11:32.000000000 +0200
-@@ -3606,7 +3606,7 @@
- esac
-
-
--DB_CONFIG_ARGS="--enable-shared=no --enable-static=yes"
-+DB_CONFIG_ARGS="--target=${target_alias} --host=${host_alias} --build=${build_alias} --enable-shared=no --enable-static=yes"
-
- case "${OS_NAME}" in
- MINGW32*)
---- osiris-4.1.8-orig/configure.ac 2005-04-13 15:22:13.000000000 +0200
-+++ osiris-4.1.8-1/configure.ac 2005-04-22 23:11:32.000000000 +0200
-@@ -270,7 +270,7 @@
-
- dnl configure local copy of Berkely DB:
-
--DB_CONFIG_ARGS="--enable-shared=no --enable-static=yes"
-+DB_CONFIG_ARGS="--target=${target_alias} --host=${host_alias} --build=${build_alias} --enable-shared=no --enable-static=yes"
-
- case "${OS_NAME}" in
- MINGW32*)
diff --git a/package/osiris/patches/02-osirisd-pidfile.patch b/package/osiris/patches/02-osirisd-pidfile.patch
deleted file mode 100644
index 80c52dbf1a..0000000000
--- a/package/osiris/patches/02-osirisd-pidfile.patch
+++ /dev/null
@@ -1,68 +0,0 @@
---- osiris-4.1.8-orig/src/osirisd/osirisd.c 2005-04-14 01:00:55.000000000 +0200
-+++ osiris-4.1.8-1/src/osirisd/osirisd.c 2005-04-22 23:11:32.000000000 +0200
-@@ -218,6 +218,8 @@
-
- #ifdef USE_PRIVSEP
- rootpriv_setup_pidfile();
-+#else
-+ setup_pidfile();
- #endif
-
- process();
---- osiris-4.1.8-orig/src/osirisd/rootpriv.c 2005-04-14 00:55:59.000000000 +0200
-+++ osiris-4.1.8-1/src/osirisd/rootpriv.c 2005-04-22 23:25:10.000000000 +0200
-@@ -35,6 +35,10 @@
- #include "logging.h"
- #include "rootpriv.h"
-
-+#ifndef WIN32
-+extern char pid_file[MAX_PATH_LENGTH];
-+#endif
-+
- #ifdef USE_PRIVSEP
-
- /* this is defined in regex, and sometimes conflicts with stuff */
-@@ -80,10 +84,6 @@
- extern pid_t child_pid;
- extern int rootpriv_pipe[2]; /* socketpair used for rootpriv comm. */
-
--#ifndef WIN32
--extern char pid_file[MAX_PATH_LENGTH];
--#endif
--
- #define INCOMING_ROOT_REQUEST() ( FD_ISSET( rootpriv_pipe[1], &root_read_set ) )
-
-
-@@ -292,17 +292,6 @@
- #endif
- }
-
--void setup_pidfile()
--{
-- FILE *pidfile = fopen( pid_file, "wb" );
--
-- if( pidfile != NULL )
-- {
-- fprintf( pidfile, "%ld\n", (long)getpid() );
-- fclose( pidfile );
-- }
--}
--
- void handle_signals()
- {
- pid_t pid;
-@@ -789,3 +778,14 @@
-
- #endif /* USE_PRIVSEP */
-
-+void setup_pidfile()
-+{
-+ FILE *pidfile = fopen( pid_file, "wb" );
-+
-+ if( pidfile != NULL )
-+ {
-+ fprintf( pidfile, "%ld\n", (long)getpid() );
-+ fclose( pidfile );
-+ }
-+}
-+
diff --git a/package/osiris/patches/03-openssl-0.9.8+.patch b/package/osiris/patches/03-openssl-0.9.8+.patch
deleted file mode 100644
index 806cf3afe2..0000000000
--- a/package/osiris/patches/03-openssl-0.9.8+.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -ruN osiris-4.1.9-old/src/osirismd/md_control.c osiris-4.1.9-new/src/osirismd/md_control.c
---- osiris-4.1.9-old/src/osirismd/md_control.c 2005-03-24 16:36:07.000000000 +0100
-+++ osiris-4.1.9-new/src/osirismd/md_control.c 2006-03-28 01:32:32.000000000 +0200
-@@ -3262,9 +3262,9 @@
- int index;
- char checksum[41];
-
-- SHA_Init( &context );
-- SHA_Update( &context, key, (unsigned long)keysize );
-- SHA_Final( &( digest[0] ), &context );
-+ SHA1_Init( &context );
-+ SHA1_Update( &context, key, (unsigned long)keysize );
-+ SHA1_Final( &( digest[0] ), &context );
-
- for ( index = 0; index < SHA_DIGEST_LENGTH; index++ )
- {
diff --git a/package/osiris/patches/mod_if.patch b/package/osiris/patches/mod_if.patch
deleted file mode 100644
index 6d18010de1..0000000000
--- a/package/osiris/patches/mod_if.patch
+++ /dev/null
@@ -1,392 +0,0 @@
-Description: The mod_if module monitors various aspects of network
- interfaces for change, including IP, Hardware Address,
- broadcast, MTU, metric, and promiscuous mode.
-Version: 0.2
-
-diff -ruN osiris-4.1.9-old/src/osirisd/modules/mod_if/Makefile osiris-4.1.9-new/src/osirisd/modules/mod_if/Makefile
---- osiris-4.1.9-old/src/osirisd/modules/mod_if/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.9-new/src/osirisd/modules/mod_if/Makefile 2005-10-07 02:19:17.000000000 +0200
-@@ -0,0 +1,16 @@
-+
-+include ../Makefile
-+
-+SRCS=mod_if.c
-+OBJS=$(SRCS:.c=.o)
-+
-+module: ${SRCS} ${OBJS}
-+
-+INCS=-I../.. -I../../../libosiris -I../../../libfileapi -I../../../..
-+
-+# meta-rule for compiling any "C" source file.
-+$(OBJS): $(SRCS)
-+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) ${INCLUDES} ${INCS} $(AM_CPPFLAGS) \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c $(SRCS)
-+ cp $@ ..
-+
-diff -ruN osiris-4.1.9-old/src/osirisd/modules/mod_if/README osiris-4.1.9-new/src/osirisd/modules/mod_if/README
---- osiris-4.1.9-old/src/osirisd/modules/mod_if/README 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.9-new/src/osirisd/modules/mod_if/README 2005-10-07 02:19:17.000000000 +0200
-@@ -0,0 +1,42 @@
-+
-+Module: mod_if
-+Author: Brian Wotring (brian@hostintegrity.com)
-+
-+
-+
-+DESCRIPTION:
-+
-+The mod_if module is designed originally to monitor the promisc flag
-+on network interfaces, but quickly turned into being able to monitor
-+various aspects of network interfaces including hardware address,
-+IP address, broadcast, MTU, and metric.
-+
-+This module is somewhat different in that each record is an element
-+about a network interface as opposed to one record per interface. This
-+will make it easier to add more elements to be monitored, easier to
-+filter, and easier to understand alerts.
-+
-+USE:
-+
-+To use this module, all that is needed is to include it in the Modules
-+block of a scan configuration, e.g.:
-+
-+ <Modules>
-+ ...
-+ Include mod_if
-+ ...
-+ </Modules>
-+
-+
-+PARAMETERS:
-+
-+There are no parameters for this module.
-+
-+PLATFORMS:
-+
-+Currently, this module is only implemented for Linux.
-+
-+NOTES:
-+
-+
-+
-diff -ruN osiris-4.1.9-old/src/osirisd/modules/mod_if/mod_if.c osiris-4.1.9-new/src/osirisd/modules/mod_if/mod_if.c
---- osiris-4.1.9-old/src/osirisd/modules/mod_if/mod_if.c 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.9-new/src/osirisd/modules/mod_if/mod_if.c 2005-10-07 02:19:17.000000000 +0200
-@@ -0,0 +1,317 @@
-+
-+/******************************************************************************
-+**
-+** Copyright (C) 2005 Brian Wotring.
-+**
-+** This program is free software; you can redistribute it and/or
-+** modify it, however, you cannot sell it.
-+**
-+** This program is distributed in the hope that it will be useful,
-+** but WITHOUT ANY WARRANTY; without even the implied warranty of
-+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** You should have received a copy of the license attached to the
-+** use of this software. If not, view a current copy of the license
-+** file here:
-+**
-+** http://www.hostintegrity.com/osiris/LICENSE
-+**
-+******************************************************************************/
-+
-+/*****************************************************************************
-+**
-+** File: mod_if.c
-+** Date: September 23, 2005
-+**
-+** Author: Brian Wotring
-+** Purpose: platform specific methods for monitoring network devices.
-+**
-+******************************************************************************/
-+
-+
-+/* CODE USED IN THIS MODULE WAS ORIGINALLY TAKEN FROM:
-+*
-+* http://mail.nl.linux.org/kernelnewbies/2003-05/msg00090.html
-+*/
-+
-+static const char *MODULE_NAME = "mod_if";
-+
-+
-+#ifndef WIN32
-+#include "config.h"
-+#endif
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+
-+#ifndef WIN32
-+#include <unistd.h>
-+#include <string.h>
-+#include <errno.h>
-+
-+#include <sys/socket.h>
-+#include <sys/types.h>
-+#include <net/if.h>
-+#endif
-+
-+#include <sys/ioctl.h>
-+#include <net/if_arp.h>
-+#include <arpa/inet.h>
-+
-+
-+#include "libosiris.h"
-+#include "libfileapi.h"
-+#include "rootpriv.h"
-+#include "common.h"
-+#include "version.h"
-+
-+#include "scanner.h"
-+#include "logging.h"
-+
-+
-+#define inaddrr(x) (*(struct in_addr *) &ifr->x[sizeof sa.sin_port])
-+#define IFRSIZE ((int)(size * sizeof (struct ifreq)))
-+
-+void process_if_unix( SCANNER *scanner )
-+{
-+ unsigned char*u;
-+ int sockfd, size = 1;
-+ struct ifreq *ifr;
-+ struct ifconf ifc;
-+ struct sockaddr_in sa;
-+
-+ SCAN_RECORD_TEXT_1 record;
-+
-+ /* Make sure we are able to create sockets */
-+
-+ if ( (sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP)) < 0 )
-+ {
-+ log_error( "mod_if unable to create socket!" );
-+ return;
-+ }
-+
-+ ifc.ifc_len = IFRSIZE;
-+ ifc.ifc_req = NULL;
-+
-+ do
-+ {
-+ ++size;
-+
-+ /* realloc buffer size until no overflow occurs */
-+
-+ if ((ifc.ifc_req = realloc(ifc.ifc_req, IFRSIZE)) == NULL )
-+ {
-+ log_error( "out of memory!!!" );
-+ return;
-+ }
-+
-+ ifc.ifc_len = IFRSIZE;
-+
-+ if (ioctl(sockfd, SIOCGIFCONF, &ifc))
-+ {
-+ log_error("ioctl failure: SIOCFIFCONF");
-+ return;
-+ }
-+
-+ } while (IFRSIZE <= ifc.ifc_len);
-+
-+ ifr = ifc.ifc_req;
-+
-+ for (;(char *) ifr < (char *) ifc.ifc_req + ifc.ifc_len; ++ifr)
-+ {
-+ if (ifr->ifr_addr.sa_data == (ifr+1)->ifr_addr.sa_data)
-+ {
-+ continue; /* duplicate, skip it */
-+ }
-+
-+ if (ioctl(sockfd, SIOCGIFFLAGS, ifr))
-+ {
-+ continue; /* failed to get flags, skip it */
-+ }
-+
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:IP", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%s", inet_ntoa(inaddrr(ifr_addr.sa_data)));
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+
-+ /*
-+ * This won't work on HP-UX 10.20 as there's no SIOCGIFHWADDR ioctl. You'll
-+ * need to use DLPI or the NETSTAT ioctl on /dev/lan0, etc (and you'll need
-+ * to be root to use the NETSTAT ioctl. Also this is deprecated and doesn't
-+ * work on 11.00).
-+ *
-+ * On Digital Unix you can use the SIOCRPHYSADDR ioctl according to an old
-+ * utility I have. Also on SGI I think you need to use a raw socket, e.g. s
-+ * = socket(PF_RAW, SOCK_RAW, RAWPROTO_SNOOP)
-+ *
-+ * Dave
-+ *
-+ * From: David Peter <dave.peter@eu.citrix.com>
-+ **/
-+
-+ if ( ioctl(sockfd, SIOCGIFHWADDR, ifr) == 0 )
-+ {
-+ /* Select which hardware types to process.
-+ **
-+ ** See list in system include file included from
-+ ** /usr/include/net/if_arp.h (For example, on
-+ ** Linux see file /usr/include/linux/if_arp.h to
-+ ** get the list.)
-+ **/
-+
-+ switch (ifr->ifr_hwaddr.sa_family)
-+ {
-+ default:
-+ continue;
-+
-+ case ARPHRD_NETROM:
-+ case ARPHRD_ETHER:
-+ case ARPHRD_PPP:
-+ case ARPHRD_EETHER:
-+ case ARPHRD_IEEE802:
-+ break;
-+ }
-+
-+ u = (unsigned char *) &ifr->ifr_addr.sa_data;
-+
-+ /* send record for MAC for this interface */
-+
-+ if (u[0] + u[1] + u[2] + u[3] + u[4] + u[5])
-+ {
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:MAC", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%2.2x.%2.2x.%2.2x.%2.2x.%2.2x.%2.2x",
-+ u[0], u[1], u[2], u[3], u[4], u[5]);
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+ }
-+
-+ if ( ioctl(sockfd, SIOCGIFNETMASK, ifr) == 0 &&
-+ strcmp("255.255.255.255", inet_ntoa(inaddrr(ifr_addr.sa_data))))
-+ {
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:NETMASK", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%s", inet_ntoa(inaddrr(ifr_addr.sa_data)));
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+
-+ if (ifr->ifr_flags & IFF_BROADCAST)
-+ {
-+ if ( ioctl(sockfd, SIOCGIFBRDADDR, ifr) == 0 &&
-+ strcmp("0.0.0.0", inet_ntoa(inaddrr(ifr_addr.sa_data))))
-+ {
-+
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:BROADCAST", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%s",inet_ntoa(inaddrr(ifr_addr.sa_data)));
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+ }
-+
-+ /* Added by David Vasil to check for Promiscuous mode */
-+
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:PROMISC", ifr->ifr_name );
-+
-+ if ( ioctl(sockfd, SIOCGIFFLAGS, ifr) == 0 &&
-+ ifr->ifr_flags & IFF_PROMISC)
-+ {
-+ osi_strlcpy( record.data, "ENABLED", sizeof( record.data ) );
-+ }
-+
-+ else
-+ {
-+ osi_strlcpy( record.data, "DISABLED", sizeof( record.data ) );
-+ }
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+
-+
-+ if ( ioctl(sockfd, SIOCGIFMTU, ifr) == 0 )
-+ {
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:MTU", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%u", ifr->ifr_mtu );
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+
-+ if ( ioctl(sockfd, SIOCGIFMETRIC, ifr) == 0 )
-+ {
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ osi_snprintf( record.name, sizeof( record.name ),
-+ "if:%s:METRIC", ifr->ifr_name );
-+
-+ osi_snprintf( record.data, sizeof( record.data ),
-+ "%u", ifr->ifr_metric );
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+ }
-+
-+ close(sockfd);
-+}
-+
-+void mod_if( SCANNER *scanner )
-+{
-+#if defined(SYSTEM_LINUX)
-+ process_if_unix( scanner );
-+#endif
-+
-+}
diff --git a/package/osiris/patches/mod_nvram.patch b/package/osiris/patches/mod_nvram.patch
deleted file mode 100644
index 69b6cd6099..0000000000
--- a/package/osiris/patches/mod_nvram.patch
+++ /dev/null
@@ -1,213 +0,0 @@
-Description: The mod_nvram module was developed specifically to monitor
- configuration settings stored in nvram on Linksys devices.
- In the future, this module could be used to monitor other
- attributes of similar devices.
-Version: 0.1
-
---- osiris-4.1.8-orig/src/osirisd/modules/mod_nvram/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_nvram/Makefile 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,16 @@
-+
-+include ../Makefile
-+
-+SRCS=mod_nvram.c
-+OBJS=$(SRCS:.c=.o)
-+
-+module: ${SRCS} ${OBJS}
-+
-+INCS=-I../.. -I../../../libosiris -I../../../libfileapi -I../../../..
-+
-+# meta-rule for compiling any "C" source file.
-+$(OBJS): $(SRCS)
-+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) ${INCLUDES} ${INCS} $(AM_CPPFLAGS) \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c $(SRCS)
-+ cp $@ ..
-+
---- osiris-4.1.8-orig/src/osirisd/modules/mod_nvram/README 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_nvram/README 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,40 @@
-+
-+Module: mod_nvram
-+Author: Brian Wotring (brian@shmoo.com)
-+
-+
-+
-+DESCRIPTION:
-+
-+The mod_nvram module reads the key=value pairs stored in nvram. This
-+is primarily for Linksys routers, but could be modified to run on
-+other systems if necessary. On the routers like the WRT54G, the
-+nvram settings hold sensitive information that needs to be monitored.
-+The format for the record structure is as follows:
-+
-+ name:value
-+
-+USE:
-+
-+To use this module, all that is needed is to include it in the System
-+block of a scan configuration, e.g.:
-+
-+ <System>
-+ ...
-+ Include mod_nvram
-+ ...
-+ </System>
-+
-+
-+PARAMETERS:
-+
-+There are no parameters for this module.
-+
-+PLATFORMS:
-+
-+Currently, only for the Linksys WRT54G and WRT54GS devices.
-+
-+NOTES:
-+
-+
-+
---- osiris-4.1.8-orig/src/osirisd/modules/mod_nvram/mod_nvram.c 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_nvram/mod_nvram.c 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,142 @@
-+
-+/******************************************************************************
-+**
-+** This program is free software; you can redistribute it and/or
-+** modify it, however, you cannot sell it.
-+**
-+** This program is distributed in the hope that it will be useful,
-+** but WITHOUT ANY WARRANTY; without even the implied warranty of
-+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** You should have received a copy of the license attached to the
-+** use of this software. If not, visit www.shmoo.com/osiris for
-+** details.
-+**
-+******************************************************************************/
-+
-+/*****************************************************************************
-+**
-+** File: mod_users.c
-+** Date: January 1, 2004
-+**
-+** Author: Brian Wotring
-+** Purpose: platform specific methods for reading user file information.
-+**
-+******************************************************************************/
-+
-+#include "libosiris.h"
-+#include "libfileapi.h"
-+#include "rootpriv.h"
-+#include "common.h"
-+#include "version.h"
-+
-+#include "scanner.h"
-+#include "logging.h"
-+
-+
-+#define NVRAM_PATH "/usr/sbin/nvram"
-+#define NVRAM_ARG "show"
-+
-+static const char *MODULE_NAME = "mod_nvram";
-+
-+
-+void mod_nvram( SCANNER *scanner )
-+{
-+ int pid;
-+ int pc[2];
-+ int cp[2];
-+ char temp_line[4096];
-+ FILE *file;
-+ SCAN_RECORD_TEXT_1 record;
-+
-+ if( pipe(pc) < 0)
-+ {
-+ log_error( "mod_nvram: error creating pipe!" );
-+ return;
-+ }
-+
-+ if( pipe(cp) < 0)
-+ {
-+ log_error( "mod_nvram: error creating pipe!" );
-+ return;
-+ }
-+
-+ /* Create a child to run nvram command. */
-+
-+ switch( pid = fork() )
-+ {
-+ case -1:
-+ log_error( "nvram: fork error!" );
-+ return;
-+
-+ case 0:
-+
-+ /* child */
-+
-+ close(1);
-+ dup( cp[1]);
-+ close(0);
-+ close( pc[1]);
-+ close( cp[0]);
-+ execl( NVRAM_PATH, NVRAM_PATH, NVRAM_ARG, NULL );
-+ exit(0);
-+
-+ default:
-+
-+ /* parent */
-+
-+ close(pc[1]);
-+ close(cp[1]);
-+
-+ file = fdopen( cp[0], "r" );
-+
-+ for(;;)
-+ {
-+ char *line;
-+ char *key_end;
-+
-+ line = fgets( temp_line, sizeof( temp_line ), file );
-+
-+ if( line == NULL)
-+ {
-+ break;
-+ }
-+
-+ line = trim_white_space( line );
-+
-+ /* skip commented and empty lines. */
-+
-+ if( ( line == NULL ) || ( line[0] == '#' ) )
-+ {
-+ continue;
-+ }
-+
-+ /* locate the username, this is the first item in the colon list. */
-+
-+ if( ( key_end = strchr( line, '=' ) ) == NULL )
-+ {
-+ continue;
-+ }
-+
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+ /* user the key as a key/path for this record. */
-+
-+ (*key_end) = '\0';
-+ key_end++;
-+ osi_strlcpy( record.name, "nvram:", sizeof( record.name ) );
-+ osi_strlcat( record.name, line, sizeof( record.name ) );
-+
-+ /* now copy in the value into the data portion. */
-+ /* and send this record on its way. */
-+
-+ osi_strlcpy( record.data, key_end, sizeof( record.data ) );
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+ }
-+ }
-+}
-+
diff --git a/package/osiris/patches/mod_uptime.patch b/package/osiris/patches/mod_uptime.patch
deleted file mode 100644
index 2bfeec6b44..0000000000
--- a/package/osiris/patches/mod_uptime.patch
+++ /dev/null
@@ -1,243 +0,0 @@
-Description: The mod_uptime module obtains the system boot time value
- for comparison with scans.
-Version: 0.2
-
---- osiris-4.1.8-orig/src/osirisd/modules/mod_uptime/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_uptime/Makefile 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,16 @@
-+
-+include ../Makefile
-+
-+SRCS=mod_uptime.c
-+OBJS=$(SRCS:.c=.o)
-+
-+module: ${SRCS} ${OBJS}
-+
-+INCS=-I../.. -I../../../libosiris -I../../../libfileapi -I../../../..
-+
-+# meta-rule for compiling any "C" source file.
-+$(OBJS): $(SRCS)
-+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) ${INCLUDES} ${INCS} $(AM_CPPFLAGS) \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c $(SRCS)
-+ cp $@ ..
-+
---- osiris-4.1.8-orig/src/osirisd/modules/mod_uptime/README 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_uptime/README 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,36 @@
-+
-+Module: mod_uptime
-+Author: Brian Wotring (brian@shmoo.com)
-+
-+
-+
-+DESCRIPTION:
-+
-+The mod_uptime module obtains the system boot time value for comparison
-+with scans.
-+
-+USE:
-+
-+To use this module, all that is needed is to include it in the System
-+block of a scan configuration, e.g.:
-+
-+ <System>
-+ ...
-+ Include mod_uptime
-+ ...
-+ </System>
-+
-+
-+PARAMETERS:
-+
-+There are no parameters for this module.
-+
-+PLATFORMS:
-+
-+Currently, this module is implemented for FreeBSD, OpenBSD,
-+Linux, Solaris, and Mac OS X.
-+
-+NOTES:
-+
-+
-+
---- osiris-4.1.8-orig/src/osirisd/modules/mod_uptime/mod_uptime.c 1970-01-01 01:00:00.000000000 +0100
-+++ osiris-4.1.8-1/src/osirisd/modules/mod_uptime/mod_uptime.c 2005-04-22 23:11:32.000000000 +0200
-@@ -0,0 +1,178 @@
-+
-+/******************************************************************************
-+**
-+** This program is free software; you can redistribute it and/or
-+** modify it, however, you cannot sell it.
-+**
-+** This program is distributed in the hope that it will be useful,
-+** but WITHOUT ANY WARRANTY; without even the implied warranty of
-+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-+**
-+** You should have received a copy of the license attached to the
-+** use of this software. If not, visit www.shmoo.com/osiris for
-+** details.
-+**
-+******************************************************************************/
-+
-+/*****************************************************************************
-+**
-+** File: mod_uptime.c
-+** Date: March 22, 2004
-+**
-+** Author: Brian Wotring
-+** Purpose: platform specific methods for obtaining the system boot time.
-+**
-+******************************************************************************/
-+
-+#include "libosiris.h"
-+#include "libfileapi.h"
-+#include "rootpriv.h"
-+#include "common.h"
-+#include "version.h"
-+
-+#include "scanner.h"
-+#include "logging.h"
-+#include "config.h"
-+
-+#ifdef HAVE_SYS_SYSCTL_H
-+#include <sys/sysctl.h>
-+#endif
-+
-+#ifdef SYSTEM_SUNOS
-+#include <utmpx.h>
-+#endif
-+
-+#ifdef SYSTEM_LINUX
-+#include <utmp.h>
-+#endif
-+
-+#define PROC_FILE "/proc/uptime"
-+#define OSI_WTMP_FILE "/var/log/wtmp"
-+
-+static const char *MODULE_NAME = "mod_uptime";
-+
-+
-+void mod_uptime( SCANNER *scanner )
-+{
-+ SCAN_RECORD_TEXT_1 record;
-+ char *time = NULL;
-+ char *temp;
-+
-+ initialize_scan_record( (SCAN_RECORD *)&record,
-+ SCAN_RECORD_TYPE_TEXT_1 );
-+
-+ osi_strlcpy( record.module_name, MODULE_NAME,
-+ sizeof( record.module_name ) );
-+
-+#if defined(SYSTEM_FREEBSD) || defined(SYSTEM_OPENBSD) || defined(SYSTEM_DARWIN)
-+ {
-+ time_t t;
-+ struct timeval result;
-+
-+ int request[2] = { CTL_KERN, KERN_BOOTTIME };
-+ size_t result_len = sizeof(result);
-+
-+ if( sysctl( request, 2, &result, &result_len, NULL, 0 ) < 0)
-+ {
-+ log_error( "unable to obtain uptime value." );
-+ return;
-+ }
-+
-+ t = result.tv_sec;
-+ time = ctime( &t );
-+ }
-+
-+#elif defined(SYSTEM_SUNOS)
-+ {
-+ struct utmpx * ent;
-+ time_t t;
-+
-+ while( ( ent = getutxent() ) )
-+ {
-+ if( !strcmp( "system boot", ent->ut_line ) )
-+ {
-+ t = ent->ut_tv.tv_sec;
-+ time = ctime( &t );
-+ }
-+ }
-+ }
-+
-+#elif defined(SYSTEM_LINUX)
-+ {
-+ FILE *fp;
-+ time_t t;
-+ struct utmp ut;
-+
-+ char buf[40];
-+ char buf2[10];
-+ int filecount = 0;
-+
-+next_file:
-+
-+ osi_strlcpy( buf, OSI_WTMP_FILE, sizeof( buf ) );
-+
-+ if( filecount > 0 )
-+ {
-+ osi_snprintf( buf2, sizeof(buf2), "%d", filecount );
-+ osi_strlcat( buf, buf2, sizeof(buf) );
-+ }
-+
-+ fp = osi_fopen( buf, "r", 0 );
-+
-+ if( fp == NULL )
-+ {
-+ log_error( "unable to obtain uptime value." );
-+ return;
-+ }
-+
-+ while(1)
-+ {
-+ int rc = fread( &ut, 1, sizeof(ut), fp );
-+
-+ /* end of file, try next. */
-+
-+ if( rc == 0 )
-+ {
-+ filecount++;
-+ fclose( fp );
-+
-+ goto next_file;
-+ }
-+
-+ /* found restart event. */
-+
-+ if( ( strcmp( ut.ut_name, "reboot" ) == 0 ) ||
-+ ( strcmp( ut.ut_name, "shutdown" ) == 0 ) )
-+ {
-+
-+ t = ut.ut_time;
-+ time = ctime( &t );
-+
-+ break;
-+ }
-+ }
-+
-+ fclose( fp );
-+ }
-+#endif
-+
-+ if( time == NULL )
-+ {
-+ log_error( "unable to obtain uptime value." );
-+ return;
-+ }
-+
-+ /* remove any trailing newline from the ctime() calls. */
-+
-+ if( ( temp = strchr( time, '\n' ) ) )
-+ {
-+ (*temp) = '\0';
-+ }
-+
-+ osi_strlcpy( record.name, "uptime", sizeof( record.name ) );
-+ osi_strlcpy( record.data, time, sizeof( record.data ) );
-+
-+ send_scan_data( scanner, (SCAN_RECORD *)&record );
-+}
-+
-+