OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src openpkg-web Date: 09-Jun-2003 14:37:39
Branch: HEAD Handle: 2003060913373702
Added files:
openpkg-src/libnids libnids.patch
Modified files:
openpkg-src/libnids libnids.spec
openpkg-web news.txt
Log:
unbreak this package
Summary:
Revision Changes Path
1.1 +201 -0 openpkg-src/libnids/libnids.patch
1.15 +10 -4 openpkg-src/libnids/libnids.spec
1.4775 +1 -0 openpkg-web/news.txt
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/libnids/libnids.patch
============================================================================
$ cvs diff -u -r0 -r1.1 libnids.patch
--- /dev/null 2003-06-09 14:37:39.000000000 +0200
+++ libnids.patch 2003-06-09 14:37:39.000000000 +0200
@@ -0,0 +1,201 @@
+--- src/checksum.c.orig Wed Aug 21 17:11:09 2002
++++ src/checksum.c Mon Jun 9 14:35:09 2003
+@@ -4,193 +4,6 @@
+ #include <netinet/tcp.h>
+ #include <netinet/udp.h>
+
+-#if ( __i386__ || __i386 )
+-// all asm procedures are copied from Linux 2.0.36 and 2.2.10 kernels
+-
+-/*
+- computes the checksum of a memory block at buff, length len, and
+- adds in "sum" (32-bit)
+-
+- returns a 32-bit number suitable for feeding into itself or
+- csum_tcpudp_magic
+-
+- this function must be called with even lengths, except for the last
+- fragment, which may be odd
+-
+- it's best to have buff aligned on a 32-bit boundary
+-*/
+-u_int
+-csum_partial(const u_char * buff, int len, u_int sum)
+-{
+- __asm__ (
+-/* "pushl %esi
+- pushl %ebx
+- movl 20(%esp),%eax # Function arg: u_int sum
+- movl 16(%esp),%ecx # Function arg: int len
+- movl 12(%esp),%esi # Function arg: u_char *buff*/
+-
+- "testl $2, %%esi
+- jz 2f
+- subl $2, %%ecx
+- jae 1f
+- addl $2, %%ecx
+- jmp 4f
+-1: movw (%%esi), %%bx
+- addl $2, %%esi
+- addw %%bx, %%ax
+- adcl $0, %%eax
+-2:
+- movl %%ecx, %%edx
+- shrl $5, %%ecx
+- jz 2f
+- testl %%esi, %%esi
+-1: movl (%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 4(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 8(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 12(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 16(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 20(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 24(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- movl 28(%%esi), %%ebx
+- adcl %%ebx, %%eax
+- lea 32(%%esi), %%esi
+- dec %%ecx
+- jne 1b
+- adcl $0, %%eax
+-2: movl %%edx, %%ecx
+- andl $0x1c, %%edx
+- je 4f
+- shrl $2, %%edx
+-3: adcl (%%esi), %%eax
+- lea 4(%%esi), %%esi
+- dec %%edx
+- jne 3b
+- adcl $0, %%eax
+-4: andl $3, %%ecx
+- jz 7f
+- cmpl $2, %%ecx
+- jb 5f
+- movw (%%esi),%%cx
+- leal 2(%%esi),%%esi
+- je 6f
+- shll $16,%%ecx
+-5: movb (%%esi),%%cl
+-6: addl %%ecx,%%eax
+- adcl $0, %%eax
+-7: "
+- : "=a"(sum)
+- : "0"(sum), "c"(len), "S"(buff)
+- : "bx", "dx");
+-
+- return (sum);
+-}
+-
+-/*
+- This is a version of ip_compute_csum() optimized for IP headers,
+- which always checksum on 4 octet boundaries.
+-
+- By Jorge Cwik <[EMAIL PROTECTED]>, adapted for linux by Arnt
+- Gulbrandsen.
+-*/
+-inline u_short ip_fast_csum(u_char * iph, u_int ihl)
+-{
+- u_int sum;
+-
+- __asm__ __volatile__("
+- movl (%1), %0
+- subl $4, %2
+- jbe 2f
+- addl 4(%1), %0
+- adcl 8(%1), %0
+- adcl 12(%1), %0
+-1: adcl 16(%1), %0
+- lea 4(%1), %1
+- decl %2
+- jne 1b
+- adcl $0, %0
+- movl %0, %2
+- shrl $16, %0
+- addw %w2, %w0
+- adcl $0, %0
+- notl %0
+-2:
+- "
+- /*
+- Since the input registers which are loaded with iph and ipl
+- are modified, we must also specify them as outputs, or gcc
+- will assume they contain their original values.
+- */
+- : "=r" (sum), "=r" (iph), "=r" (ihl)
+- : "1" (iph), "2" (ihl));
+-
+- return (sum);
+-}
+-
+-/* Fold a partial checksum. */
+-static inline u_int
+-csum_fold(u_int sum)
+-{
+- __asm__("
+- addl %1, %0
+- adcl $0xffff, %0
+- "
+- : "=r" (sum)
+- : "r" (sum << 16), "0" (sum & 0xffff0000)
+- );
+- return ((~sum) >> 16);
+-}
+-
+-/*
+- computes the checksum of the TCP/UDP pseudo-header
+- returns a 16-bit checksum, already complemented
+-*/
+-static inline u_short
+-csum_tcpudp_magic(u_int saddr, u_int daddr, u_short len,
+- u_short proto, u_int sum)
+-{
+- __asm__("
+- addl %1, %0
+- adcl %2, %0
+- adcl %3, %0
+- adcl $0, %0
+- "
+- : "=r" (sum)
+- : "g" (daddr), "g"(saddr), "g"((ntohs(len) << 16) + proto * 256), "0"(sum));
+- return (csum_fold(sum));
+-}
+-
+-/*
+- this routine is used for miscellaneous IP-like checksums, mainly in
+- icmp.c
+-*/
+-inline u_short
+-ip_compute_csum(u_char * buff, int len)
+-{
+- return (csum_fold(csum_partial(buff, len, 0)));
+-}
+-
+-inline u_short
+-my_tcp_check(struct tcphdr *th, int len, u_int saddr, u_int daddr)
+-{
+- return csum_tcpudp_magic(saddr, daddr, len, IPPROTO_TCP,
+- csum_partial((char *)th, len, 0));
+-}
+-inline u_short
+-my_udp_check(void *u, int len, u_int saddr, u_int daddr)
+-{
+- return csum_tcpudp_magic(saddr, daddr, len, IPPROTO_UDP,
+- csum_partial((char *)u, len, 0));
+-}
+-
+-#else /* !i386 */
+-
+ struct psuedo_hdr
+ {
+ u_int saddr;
+@@ -275,4 +88,3 @@
+ return (ip_check_ext((u_short *)u, len, sum));
+ }
+
+-#endif /* !i386 */
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/libnids/libnids.spec
============================================================================
$ cvs diff -u -r1.14 -r1.15 libnids.spec
--- openpkg-src/libnids/libnids.spec 28 Jan 2003 19:16:45 -0000 1.14
+++ openpkg-src/libnids/libnids.spec 9 Jun 2003 12:37:39 -0000 1.15
@@ -23,6 +23,10 @@
## SUCH DAMAGE.
##
+# package version
+%define V_major 1.17
+%define V_minor rc1
+
# package information
Name: libnids
Summary: Network Intrusion Detection System Library
@@ -32,11 +36,12 @@
Distribution: OpenPKG [PLUS]
Group: Network
License: GPL
-Version: 1.17
-Release: 20030128
+Version: %{V_major}%{V_minor}
+Release: 20030609
# list of sources
-Source0:
http://www.packetfactory.net/projects/libnids/dist/libnids-%{version}rc1.tar.gz
+Source0:
http://www.packetfactory.net/projects/libnids/dist/libnids-%{version}.tar.gz
+Patch0: libnids.patch
# build information
Prefix: %{l_prefix}
@@ -53,7 +58,8 @@
detection.
%prep
- %setup -q
+ %setup -q -n libnids-%{V_major}
+ %patch -p0
%build
define="LIBNET_LIL_ENDIAN"
@@ .
patch -p0 <<'@@ .'
Index: openpkg-web/news.txt
============================================================================
$ cvs diff -u -r1.4774 -r1.4775 news.txt
--- openpkg-web/news.txt 9 Jun 2003 12:01:52 -0000 1.4774
+++ openpkg-web/news.txt 9 Jun 2003 12:37:37 -0000 1.4775
@@ -1,3 +1,4 @@
+09-Jun-2003: Upgraded package: P<libnids-1.17rc1-20030609>
09-Jun-2003: Upgraded package: P<imapd-2.1.13-20030609>
09-Jun-2003: Upgraded package: P<mysql3-3.23.56-20030609>
09-Jun-2003: Upgraded package: P<mysql-4.0.13-20030609>
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]