diff options
author | Jörg Mayer <jmayer@loplof.de> | 2006-07-27 17:15:34 +0000 |
---|---|---|
committer | Jörg Mayer <jmayer@loplof.de> | 2006-07-27 17:15:34 +0000 |
commit | 52e9a9c01226cb5999c62fe3008bff0bef0265ce (patch) | |
tree | 38b26875ff6d40802ab3ebf15bc5ce38c7d59610 /debian/patches | |
parent | 5c8bb9bca89f4023f0ba6b0f59650b3b539fa28e (diff) |
Frederic Peters <fpeters@debian.org>:
Update to match the current debian package
svn path=/trunk/; revision=18799
Diffstat (limited to 'debian/patches')
-rw-r--r-- | debian/patches/00list | 10 | ||||
-rw-r--r-- | debian/patches/01_idl2deb.dpatch | 424 | ||||
-rw-r--r-- | debian/patches/02_asn2deb.dpatch | 392 | ||||
-rw-r--r-- | debian/patches/03_preferences.dpatch | 26 | ||||
-rw-r--r-- | debian/patches/04_drop-capabilities.dpatch | 170 | ||||
-rw-r--r-- | debian/patches/05_plugin-libdir.dpatch | 28 | ||||
-rw-r--r-- | debian/patches/06_giop-buffer.dpatch | 19 | ||||
-rw-r--r-- | debian/patches/07_gcc4.dpatch | 20 |
8 files changed, 1089 insertions, 0 deletions
diff --git a/debian/patches/00list b/debian/patches/00list index 2634dfdf24..bebecb3337 100644 --- a/debian/patches/00list +++ b/debian/patches/00list @@ -5,6 +5,16 @@ 05_plugin-libdir 06_giop-buffer 07_gcc4 +08_wireshark-desktop-menu +09_idl2wrs +10_wireshark_gen +01_idl2deb +02_asn2deb +03_preferences +04_drop-capabilities +05_plugin-libdir +06_giop-buffer +07_gcc4 08_ethereal-desktop-menu 09_idl2wrs 10_ethereal_gen diff --git a/debian/patches/01_idl2deb.dpatch b/debian/patches/01_idl2deb.dpatch index 2d32535b65..3e4782aa15 100644 --- a/debian/patches/01_idl2deb.dpatch +++ b/debian/patches/01_idl2deb.dpatch @@ -2,6 +2,430 @@ ## 01_idl2deb.dpatch by <fpeters@debian.org> ## ## All lines beginning with `## DP:' are a description of the patch. +## DP: idl2deb - create Debian packages from idl2wrs modules + +@DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./idl2deb /tmp/dpep-work.K2bQz4/wireshark-0.10.11/idl2deb +--- ./idl2deb 1970-01-01 01:00:00.000000000 +0100 ++++ /tmp/dpep-work.K2bQz4/wireshark-0.10.11/idl2deb 2005-07-17 19:35:08.000000000 +0200 +@@ -0,0 +1,252 @@ ++#!/usr/bin/env python ++ ++# idl2deb - quick hack by W. Borgert <debacle@debian.org> to create ++# Debian GNU/Linux packages from idl2wrs modules for Wireshark. ++# Copyright 2003, W. Borgert ++ ++# Makefile.am and configure.ac code by: ++# Copyright 2001, Ericsson Inc. ++# Frank Singleton <frank.singleton@ericsson.com> ++# ++# Wireshark - Network traffic analyzer ++# By Gerald Combs <gerald@wireshark.com> ++# Copyright 1998 Gerald Combs ++ ++# This program is free software; you can redistribute it and/or ++# modify it under the terms of the GNU General Public License ++# as published by the Free Software Foundation; either version 2 ++# of the License, or (at your option) any later version. ++# ++# 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. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++ ++import getopt, os, string, sys, time ++ ++scriptinfo = """idl2deb version 2003-10-03 ++Copyright 2003, W. Borgert ++Free software, released under the terms of the GPL.""" ++ ++options = {'dbopts': "", ++ 'email': "invalid@invalid.invalid", ++ 'help': 0, ++ 'idl': None, ++ 'name': "No Name", ++ 'preserve': 0, ++ 'version': 0} ++ ++def bootstrap(): ++ """Generate Makefile.in and configure script.""" ++ os.system("aclocal") ++ os.system("autoconf") ++ os.system("libtoolize --automake --copy --force") ++ os.system("automake --add-missing --copy --foreign") ++ ++def create_file(filename, content, mode = None): ++ """Create a file with given content.""" ++ global options ++ if options['preserve'] and os.path.isfile(filename): ++ return ++ f = open(filename, 'w') ++ f.write(content) ++ f.close() ++ if mode: ++ os.chmod(filename, mode) ++ ++def create_files(version, deb, email, idl, name, iso, rfc): ++ """Create all files for the .deb build process.""" ++ base = idl.lower()[:-4] ++ create_file("Makefile.am", """# ++ ++plugindir = @plugindir@ ++ ++plugin_LTLIBRARIES = %s.la ++%s_la_SOURCES = packet-%s.c ++%s_la_LDFLAGS = -module -avoid-version ++ ++GLIB_CFLAGS = `pkg-config --cflags glib-2.0` ++GLIB_LIBS = `pkg-config --libs glib-2.0` ++BUILT_SOURCES = packet-%s.c ++INCLUDES = -DHAVE_CONFIG -DHAVE_SYS_TYPES_H -DHAVE_SYS_TIME_H \\ ++ -DHAVE_STDARG_H -D_U_=\"__attribute__((unused))\" \\ ++ -I/usr/include/wireshark -DWS_VAR_IMPORT=extern $(GLIB_CFLAGS) ++LDADD = $(GLIB_LIBS) ++ ++# Libs must be cleared, or else libtool won't create a shared module. ++# If your module needs to be linked against any particular libraries, ++# add them here. ++LIBS = ++ ++%s_la_DEPENDENCIES = packet-%s-static.o ++ ++packet-%s-static.o: packet-%s.c ++ $(LTCOMPILE) -c -o packet-%s-static.o \\ ++ -D__WIRESHARK_STATIC__ packet-%s.c ++ ++packet-%s.c: """ % ((base,) * 12) + idl + """ ++ $(IDL2WRS) $< > $@ ++""") ++ ++ create_file("configure.ac", """AC_INIT(%s, 1.0) ++AC_PROG_LIBTOOL ++AM_INIT_AUTOMAKE ++AM_MAINTAINER_MODE ++AC_PROG_CC ++AC_STDC_HEADERS ++AC_PROG_INSTALL ++AC_SUBST(CFLAGS) ++AC_SUBST(CPPFLAGS) ++AC_SUBST(LDFLAGS) ++PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.2.2) ++AC_SUBST(GLIB_CFLAGS) ++AC_SUBST(GLIB_LIBS) ++IDL2WRS=\"`type -p idl2wrs`\" ++AC_SUBST(IDL2WRS) ++WIRESHARK_VERSION=\"%s\" ++plugindir=\"$libdir/wireshark/plugins/$WIRESHARK_VERSION\" ++AC_SUBST(plugindir) ++AC_OUTPUT([Makefile]) ++""" % (base, version)) ++ ++ if not os.path.isdir("debian"): ++ os.mkdir("debian") ++ ++ create_file("debian/rules", """#!/usr/bin/make -f ++ ++include /usr/share/cdbs/1/rules/debhelper.mk ++include /usr/share/cdbs/1/class/autotools.mk ++ ++PREFIX=`pwd`/debian/wireshark-giop-%s ++ ++binary-post-install/wireshark-giop-%s:: ++ rm -f $(PREFIX)/usr/lib/wireshark/plugins/%s/*.a ++""" % (base, base, version), 0755) ++ ++ create_file("debian/control", """Source: wireshark-giop-%s ++Section: net ++Priority: optional ++Maintainer: %s <%s> ++Standards-Version: 3.6.1.0 ++Build-Depends: wireshark-dev, autotools-dev, debhelper, cdbs ++ ++Package: wireshark-giop-%s ++Architecture: any ++Depends: wireshark (= %s), ${shlibs:Depends} ++Description: GIOP dissector for CORBA interface %s ++ This package provides a dissector for GIOP (General Inter-ORB ++ Protocol) for the Wireshark protocol analyser. It decodes the CORBA ++ (Common Object Request Broker Architecture) interfaces described ++ in the IDL (Interface Definition Language) file '%s.idl'. ++""" % (base, name, email, base, deb, base, base)) ++ ++ create_file("debian/changelog", ++ """wireshark-giop-%s (0.0.1-1) unstable; urgency=low ++ ++ * Automatically created package. ++ ++ -- %s <%s> %s ++""" % (base, name, email, rfc + "\n (" + iso + ")")) ++ ++ create_file("debian/copyright", ++ """This package has been created automatically by idl2deb on ++%s for Debian GNU/Linux. ++ ++Wireshark: http://www.wireshark.org/ ++ ++Copyright: ++ ++GPL, as evidenced by existence of GPL license file \"COPYING\". ++(the GNU GPL may be viewed on Debian systems in ++/usr/share/common-licenses/GPL) ++""" % (iso)) ++ ++def get_wrs_version(): ++ """Detect version of wireshark-dev package.""" ++ deb = os.popen( ++ "dpkg-query -W --showformat='${Version}' wireshark-dev").read() ++ debv = string.find(deb, "-") ++ if debv == -1: debv = len(deb) ++ version = deb[string.find(deb, ":")+1:debv] ++ return version, deb ++ ++def get_time(): ++ """Detect current time and return ISO and RFC time string.""" ++ currenttime = time.gmtime() ++ return time.strftime("%Y-%m-%d %H:%M:%S +0000", currenttime), \ ++ time.strftime("%a, %d %b %Y %H:%M:%S +0000", currenttime) ++ ++def main(): ++ global options ++ process_opts(sys.argv) ++ iso, rfc = get_time() ++ version, deb = get_wrs_version() ++ create_files(version, deb, ++ options['email'], options['idl'], options['name'], ++ iso, rfc) ++ bootstrap() ++ os.system("dpkg-buildpackage " + options['dbopts']) ++ ++def process_opts(argv): ++ """Process command line options.""" ++ global options ++ try: ++ opts, args = getopt.getopt(argv[1:], "d:e:hi:n:pv", ++ ["dbopts=", ++ "email=", ++ "help", ++ "idl=", ++ "name=", ++ "preserve", ++ "version"]) ++ except getopt.GetoptError: ++ usage(argv[0]) ++ sys.exit(1) ++ for o, a in opts: ++ if o in ("-d", "--dbopts"): ++ options['dbopts'] = a ++ if o in ("-e", "--email"): ++ options['email'] = a ++ if o in ("-h", "--help"): ++ options['help'] = 1 ++ if o in ("-i", "--idl"): ++ options['idl'] = a ++ if o in ("-n", "--name"): ++ options['name'] = a ++ if o in ("-p", "--preserve"): ++ options['preserve'] = 1 ++ if o in ("-v", "--version"): ++ options['version'] = 1 ++ if options['help']: ++ usage(argv[0]) ++ sys.exit(0) ++ if options['version']: ++ print scriptinfo ++ sys.exit(0) ++ if not options['idl']: ++ print "mandatory IDL file parameter missing" ++ sys.exit(1) ++ if not os.access(options['idl'], os.R_OK): ++ print "IDL file not accessible" ++ sys.exit(1) ++ ++def usage(name): ++ """Print usage help.""" ++ print "Usage: " + name + " <parameters>\n" + \ ++ "Parameters are\n" + \ ++ " --dbopts -d opts, options for dpkg-buildpackage\n" + \ ++ " --email -e address, use e-mail address\n" + \ ++ " --idl -i idlfile, IDL file to use (mandatory)\n" + \ ++ " --help -h, print help and exit\n" + \ ++ " --name -n name, use user name\n" + \ ++ " --preserve -p, do not overwrite files\n" + \ ++ " --version -v, print version and exit\n" + \ ++ "Example:\n" + \ ++ name + " -e me@foo.net -i bar.idl -n \"My Name\" " + \ ++ "-d \"-rfakeroot -uc -us\"" ++if __name__ == '__main__': ++ main() +diff -urNad --exclude=CVS --exclude=.svn ./idl2deb.dbk /tmp/dpep-work.K2bQz4/wireshark-0.10.11/idl2deb.dbk +--- ./idl2deb.dbk 1970-01-01 01:00:00.000000000 +0100 ++++ /tmp/dpep-work.K2bQz4/wireshark-0.10.11/idl2deb.dbk 2005-07-17 19:35:08.000000000 +0200 +@@ -0,0 +1,157 @@ ++<?xml version='1.0' encoding='ISO-8859-1'?> ++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" ++"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ ++ <!ENTITY command "<command>idl2deb</command>"> ++ <!ENTITY email "<email>debacle@debian.org</email>"> ++ <!ENTITY author "W. Borgert"> ++ <!ENTITY debian "<productname>Debian GNU/Linux</productname>"> ++]> ++ ++<refentry> ++ <refentryinfo> ++ <address> ++ &email; ++ </address> ++ <author> ++ <firstname>W.</firstname> ++ <surname>Borgert</surname> ++ </author> ++ <copyright> ++ <year>2003</year> ++ <year>2005</year> ++ <holder>&author;</holder> ++ </copyright> ++ <date>2003-08-17</date> ++ <keywordset> ++ <keyword>CORBA</keyword> ++ <keyword>IDL</keyword> ++ <keyword>Wireshark</keyword> ++ </keywordset> ++ <revhistory> ++ <revision> ++ <revnumber>2003-08-17</revnumber> ++ <date>2003-08-17</date> ++ <authorinitials>debacle</authorinitials> ++ <revremark>First version.</revremark> ++ </revision> ++ </revhistory> ++ </refentryinfo> ++ <refmeta> ++ <refentrytitle>idl2deb</refentrytitle> ++ ++ <manvolnum>1</manvolnum> ++ </refmeta> ++ <refnamediv> ++ <refname>idl2deb</refname> ++ ++ <refpurpose>create a Debian package for CORBA monitoring from IDL</refpurpose> ++ </refnamediv> ++ <refsynopsisdiv> ++ <cmdsynopsis> ++ &command; ++ <arg><option>-d <replaceable>opts</replaceable></option></arg> ++ <arg><option>--dbopts=<replaceable>opts</replaceable></option></arg> ++ <arg><option>-e <replaceable>address</replaceable></option></arg> ++ <arg><option>--email=<replaceable>address</replaceable></option></arg> ++ <arg>-i <replaceable>idlfile</replaceable></arg> ++ <arg>--idl=<replaceable>idlfile</replaceable></arg> ++ <arg><option>-h</option></arg> ++ <arg><option>--help</option></arg> ++ <arg><option>-n <replaceable>name</replaceable></option></arg> ++ <arg><option>--name=<replaceable>name</replaceable></option></arg> ++ <arg><option>-p</option></arg> ++ <arg><option>--preserve</option></arg> ++ <arg><option>-v</option></arg> ++ <arg><option>--version</option></arg> ++ </cmdsynopsis> ++ </refsynopsisdiv> ++ <refsect1> ++ <title>Description</title> ++ ++ <para>This manual page documents briefly the ++ <command>idl2deb</command> command.</para> ++ ++ <para>&command; takes an CORBA IDL file as input and creates a ++ Debian package from it. The package contains a loadable module ++ for the wireshark network analyser.</para> ++ </refsect1> ++ <refsect1> ++ <title>Options</title> ++ ++ <variablelist> ++ <varlistentry> ++ <term><option>-d <replaceable>opts</replaceable></option> ++ <option>--dbopts=<replaceable>opts</replaceable></option></term> ++ <listitem> ++ <para>options for dpkg-buildpackage.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-e <replaceable>address</replaceable></option> ++ <option>--email=<replaceable>address</replaceable></option></term> ++ <listitem> ++ <para>use e-mail address.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-i <replaceable>idlfile</replaceable></option> ++ <option>--idl=<replaceable>idlfile</replaceable></option></term> ++ <listitem> ++ <para>IDL file to use (mandatory).</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-h</option> ++ <option>--help</option> ++ </term> ++ <listitem> ++ <para>print help and exit.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-n <replaceable>name</replaceable></option> ++ <option>--name=<replaceable>name</replaceable></option></term> ++ <listitem> ++ <para>use user name.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-p</option> ++ <option>--preserve</option></term> ++ <listitem> ++ <para>do not overwrite files.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-v</option> ++ <option>--version</option></term> ++ <listitem> ++ <para>print version and exit.</para> ++ </listitem> ++ </varlistentry> ++ </variablelist> ++ ++ <para>Example:</para> ++ ++ <programlisting>/usr/bin/idl2deb -e me@foo.net -i bar.idl \ ++-n "My Name" -d "-rfakeroot -uc -us"</programlisting> ++ ++ </refsect1> ++ <refsect1> ++ <title>See Also</title> ++ ++ <para>A lot of tools are used, which you have to ++ <command>apt-get install</command>: wireshark-dev, python, ++ cdbs, autotools-dev, debhelper, dpkg-dev.</para> ++ </refsect1> ++ ++ <refsect1> ++ <title>Copying</title> ++ ++ <para>This manual page was written by &author; &email; for ++ &debian; (but may be used by others). Permission is granted to ++ copy, distribute and/or modify this document under the terms of ++ the GNU General Public License, Version 2 or any later ++ version published by the Free Software Foundation.</para> ++ </refsect1> ++</refentry> +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_idl2deb.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. ## DP: idl2deb - create Debian packages from idl2eth modules @DPATCH@ diff --git a/debian/patches/02_asn2deb.dpatch b/debian/patches/02_asn2deb.dpatch index 51e81c54b3..846a80c003 100644 --- a/debian/patches/02_asn2deb.dpatch +++ b/debian/patches/02_asn2deb.dpatch @@ -5,6 +5,398 @@ ## DP: asn2deb - create Debian packages from ASN.1 files @DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./asn2deb /tmp/dpep-work.5BSR7A/wireshark-0.10.11/asn2deb +--- ./asn2deb 1970-01-01 01:00:00.000000000 +0100 ++++ /tmp/dpep-work.5BSR7A/wireshark-0.10.11/asn2deb 2005-07-17 19:37:02.000000000 +0200 +@@ -0,0 +1,219 @@ ++#!/usr/bin/env python ++ ++# asn2deb - quick hack by W. Borgert <debacle@debian.org> to create ++# Debian GNU/Linux packages from ASN.1 files for Wireshark. ++# Copyright 2004, W. Borgert ++ ++# ASN.1 module for Wireshark, use of snacc type table: ++# Copyright 2003, Matthijs Melchior <matthijs.melchior@xs4all.nl> ++# ++# Wireshark - Network traffic analyzer ++# By Gerald Combs <gerald@wireshark.com> ++# Copyright 1998 Gerald Combs ++ ++# This program is free software; you can redistribute it and/or ++# modify it under the terms of the GNU General Public License ++# as published by the Free Software Foundation; either version 2 ++# of the License, or (at your option) any later version. ++# ++# 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. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++ ++import getopt, os, string, sys, time ++ ++scriptinfo = """asn2deb version 2004-02-17 ++Copyright 2004, W. Borgert ++Free software, released under the terms of the GPL.""" ++ ++options = {'asn': None, ++ 'dbopts': "", ++ 'email': "invalid@invalid.invalid", ++ 'help': 0, ++ 'name': "No Name", ++ 'preserve': 0, ++ 'version': 0} ++ ++def bootstrap(): ++ """Generate Makefile.in and configure script.""" ++ os.system("aclocal-1.7") ++ os.system("autoconf") ++ os.system("automake-1.7 --add-missing --copy --foreign") ++ ++def create_file(filename, content, mode = None): ++ """Create a file with given content.""" ++ global options ++ if options['preserve'] and os.path.isfile(filename): ++ return ++ f = open(filename, 'w') ++ f.write(content) ++ f.close() ++ if mode: ++ os.chmod(filename, mode) ++ ++def create_files(version, deb, email, asn, name, iso, rfc): ++ """Create all files for the .deb build process.""" ++ base = asn.lower()[:-5] ++ create_file("Makefile.am", """# ++ ++BUILT_SOURCES = %s.tt ++asn1ttdir = $(datadir)/wireshark/asn1 ++asn1tt_DATA = %s.tt ++ ++%s.tt: """ % ((base,) * 3) + asn + """ ++ snacc -u /usr/include/snacc/asn1/asn-useful.asn1 -T $@ $< ++""") ++ ++ create_file("configure.ac", """AC_INIT(%s, 1.0) ++AM_INIT_AUTOMAKE ++AM_MAINTAINER_MODE ++AC_PROG_INSTALL ++SNACC=\"`type -p snacc`\" ++AC_SUBST(SNACC) ++dnl WIRESHARK_VERSION=\"%s\" ++dnl plugindir=\"$prefix/share/wireshark/asn.1\" ++dnl AC_SUBST(plugindir) ++AC_OUTPUT([Makefile]) ++""" % (base, version)) ++ ++ if not os.path.isdir("debian"): ++ os.mkdir("debian") ++ ++ create_file("debian/rules", """#!/usr/bin/make -f ++ ++include /usr/share/cdbs/1/rules/debhelper.mk ++include /usr/share/cdbs/1/class/autotools.mk ++ ++PREFIX=`pwd`/debian/wireshark-asn1-%s ++ ++binary-post-install/wireshark-asn1-%s:: ++ rm -f $(PREFIX)/usr/lib/wireshark/plugins/%s/*.a ++""" % (base, base, version), 0755) ++ ++ create_file("debian/control", """Source: wireshark-asn1-%s ++Section: net ++Priority: optional ++Maintainer: %s <%s> ++Standards-Version: 3.6.1.0 ++Build-Depends: snacc, autotools-dev, debhelper, cdbs ++ ++Package: wireshark-asn1-%s ++Architecture: all ++Depends: wireshark (= %s) ++Description: ASN.1/BER dissector for %s ++ This package provides a type table for decoding BER (Basic Encoding ++ Rules) data over TCP or UDP, described by an ASN.1 (Abstract Syntax ++ Notation 1) file '%s.asn1'. ++""" % (base, name, email, base, deb, base, base)) ++ ++ create_file("debian/changelog", ++ """wireshark-asn1-%s (0.0.1-1) unstable; urgency=low ++ ++ * Automatically created package. ++ ++ -- %s <%s> %s ++""" % (base, name, email, rfc + "\n (" + iso + ")")) ++ ++ create_file("debian/copyright", ++ """This package has been created automatically be asn2deb on ++%s for Debian GNU/Linux. ++ ++Wireshark: http://www.wireshark.com/ ++ ++Copyright: ++ ++GPL, as evidenced by existence of GPL license file \"COPYING\". ++(the GNU GPL may be viewed on Debian systems in ++/usr/share/common-licenses/GPL) ++""" % (iso)) ++ ++def get_wrs_version(): ++ """Detect version of wireshark-dev package.""" ++ deb = os.popen( ++ "dpkg-query -W --showformat='${Version}' wireshark-dev").read() ++ debv = string.find(deb, "-") ++ if debv == -1: debv = len(deb) ++ version = deb[string.find(deb, ":")+1:debv] ++ return version, deb ++ ++def get_time(): ++ """Detect current time and return ISO and RFC time string.""" ++ currenttime = time.gmtime() ++ return time.strftime("%Y-%m-%d %H:%M:%S +0000", currenttime), \ ++ time.strftime("%a, %d %b %Y %H:%M:%S +0000", currenttime) ++ ++def main(): ++ global options ++ process_opts(sys.argv) ++ iso, rfc = get_time() ++ version, deb = get_wrs_version() ++ create_files(version, deb, ++ options['email'], options['asn'], options['name'], ++ iso, rfc) ++ bootstrap() ++ os.system("dpkg-buildpackage " + options['dbopts']) ++ ++def process_opts(argv): ++ """Process command line options.""" ++ global options ++ try: ++ opts, args = getopt.getopt(argv[1:], "a:d:e:hn:pv", ++ ["asn=", ++ "dbopts=", ++ "email=", ++ "help", ++ "name=", ++ "preserve", ++ "version"]) ++ except getopt.GetoptError: ++ usage(argv[0]) ++ sys.exit(1) ++ for o, a in opts: ++ if o in ("-a", "--asn"): ++ options['asn'] = a ++ if o in ("-d", "--dbopts"): ++ options['dbopts'] = a ++ if o in ("-e", "--email"): ++ options['email'] = a ++ if o in ("-h", "--help"): ++ options['help'] = 1 ++ if o in ("-n", "--name"): ++ options['name'] = a ++ if o in ("-p", "--preserve"): ++ options['preserve'] = 1 ++ if o in ("-v", "--version"): ++ options['version'] = 1 ++ if options['help']: ++ usage(argv[0]) ++ sys.exit(0) ++ if options['version']: ++ print scriptinfo ++ sys.exit(0) ++ if not options['asn']: ++ print "mandatory ASN.1 file parameter missing" ++ sys.exit(1) ++ if not os.access(options['asn'], os.R_OK): ++ print "ASN.1 file not accessible" ++ sys.exit(1) ++ ++def usage(name): ++ """Print usage help.""" ++ print "Usage: " + name + " <parameters>\n" + \ ++ "Parameters are\n" + \ ++ " --asn -a asn1file, ASN.1 file to use (mandatory)\n" + \ ++ " --dbopts -d opts, options for dpkg-buildpackage\n" + \ ++ " --email -e address, use e-mail address\n" + \ ++ " --help -h, print help and exit\n" + \ ++ " --name -n name, use user name\n" + \ ++ " --preserve -p, do not overwrite files\n" + \ ++ " --version -v, print version and exit\n" + \ ++ "Example:\n" + \ ++ name + " -e me@foo.net -a bar.asn1 -n \"My Name\" " + \ ++ "-d \"-rfakeroot -uc -us\"" ++if __name__ == '__main__': ++ main() +diff -urNad --exclude=CVS --exclude=.svn ./asn2deb.dbk /tmp/dpep-work.5BSR7A/wireshark-0.10.11/asn2deb.dbk +--- ./asn2deb.dbk 1970-01-01 01:00:00.000000000 +0100 ++++ /tmp/dpep-work.5BSR7A/wireshark-0.10.11/asn2deb.dbk 2005-07-17 19:37:02.000000000 +0200 +@@ -0,0 +1,158 @@ ++<?xml version='1.0' encoding='ISO-8859-1'?> ++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" ++"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ ++ <!ENTITY command "<command>asn2deb</command>"> ++ <!ENTITY email "<email>debacle@debian.org</email>"> ++ <!ENTITY author "W. Borgert"> ++ <!ENTITY debian "<productname>Debian GNU/Linux</productname>"> ++]> ++ ++<refentry> ++ <refentryinfo> ++ <address> ++ &email; ++ </address> ++ <author> ++ <firstname>W.</firstname> ++ <surname>Borgert</surname> ++ </author> ++ <copyright> ++ <year>2003</year> ++ <year>2005</year> ++ <holder>&author;</holder> ++ </copyright> ++ <date>2004-02-18</date> ++ <keywordset> ++ <keyword>ASN.1</keyword> ++ <keyword>BER</keyword> ++ <keyword>Wireshark</keyword> ++ </keywordset> ++ <revhistory> ++ <revision> ++ <revnumber>1</revnumber> ++ <date>2004-02-18</date> ++ <authorinitials>debacle</authorinitials> ++ <revremark>First version.</revremark> ++ </revision> ++ </revhistory> ++ </refentryinfo> ++ <refmeta> ++ <refentrytitle>asn2deb</refentrytitle> ++ ++ <manvolnum>1</manvolnum> ++ </refmeta> ++ <refnamediv> ++ <refname>asn2deb</refname> ++ ++ <refpurpose>create a Debian package for BER monitoring from ASN.1</refpurpose> ++ </refnamediv> ++ <refsynopsisdiv> ++ <cmdsynopsis> ++ &command; ++ <arg>-a <replaceable>ASN.1 file</replaceable></arg> ++ <arg>--asn=<replaceable>ASN.1 file</replaceable></arg> ++ <arg><option>-d <replaceable>opts</replaceable></option></arg> ++ <arg><option>--dbopts=<replaceable>opts</replaceable></option></arg> ++ <arg><option>-e <replaceable>address</replaceable></option></arg> ++ <arg><option>--email=<replaceable>address</replaceable></option></arg> ++ <arg><option>-h</option></arg> ++ <arg><option>--help</option></arg> ++ <arg><option>-n <replaceable>name</replaceable></option></arg> ++ <arg><option>--name=<replaceable>name</replaceable></option></arg> ++ <arg><option>-p</option></arg> ++ <arg><option>--preserve</option></arg> ++ <arg><option>-v</option></arg> ++ <arg><option>--version</option></arg> ++ </cmdsynopsis> ++ </refsynopsisdiv> ++ <refsect1> ++ <title>Description</title> ++ ++ <para>This manual page documents briefly the ++ <command>asn2deb</command> command.</para> ++ ++ <para>&command; takes an ASN.1 file as input and creates a Debian ++ package from it. The package contains a loadable type table file ++ for the wireshark network analyser. The type table is generated by ++ the ASN.1 compiler <command>snacc</command>.</para> ++ </refsect1> ++ <refsect1> ++ <title>Options</title> ++ ++ <variablelist> ++ <varlistentry> ++ <term><option>-a <replaceable>ASN.1 file</replaceable></option> ++ <option>--asn=<replaceable>ASN.1 file</replaceable></option></term> ++ <listitem> ++ <para>ASN.1 file to use (mandatory).</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-d <replaceable>opts</replaceable></option> ++ <option>--dbopts=<replaceable>opts</replaceable></option></term> ++ <listitem> ++ <para>options for dpkg-buildpackage.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-e <replaceable>address</replaceable></option> ++ <option>--email=<replaceable>address</replaceable></option></term> ++ <listitem> ++ <para>use e-mail address.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-h</option> ++ <option>--help</option> ++ </term> ++ <listitem> ++ <para>print help and exit.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-n <replaceable>name</replaceable></option> ++ <option>--name=<replaceable>name</replaceable></option></term> ++ <listitem> ++ <para>use user name.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-p</option> ++ <option>--preserve</option></term> ++ <listitem> ++ <para>do not overwrite files.</para> ++ </listitem> ++ </varlistentry> ++ <varlistentry> ++ <term><option>-v</option> ++ <option>--version</option></term> ++ <listitem> ++ <para>print version and exit.</para> ++ </listitem> ++ </varlistentry> ++ </variablelist> ++ ++ <para>Example:</para> ++ ++ <programlisting>/usr/bin/asn2deb -e me@foo.net -a bar.asn1 \ ++-n "My Name" -d "-rfakeroot -uc -us"</programlisting> ++ ++ </refsect1> ++ <refsect1> ++ <title>See Also</title> ++ ++ <para>A lot of tools are used, which you have to ++ <command>apt-get install</command>: wireshark-dev, python, ++ cdbs, autotools-dev, debhelper, dpkg-dev, snacc.</para> ++ </refsect1> ++ ++ <refsect1> ++ <title>Copying</title> ++ ++ <para>This manual page was written by &author; &email; for ++ &debian; (but may be used by others). Permission is granted to ++ copy, distribute and/or modify this document under the terms of ++ the GNU General Public License, Version 2 or any later ++ version published by the Free Software Foundation.</para> ++ </refsect1> ++</refentry> +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02_asn2deb.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: asn2deb - create Debian packages from ASN.1 files + +@DPATCH@ diff -urNad --exclude=CVS --exclude=.svn ./asn2deb /tmp/dpep-work.5BSR7A/ethereal-0.10.11/asn2deb --- ./asn2deb 1970-01-01 01:00:00.000000000 +0100 +++ /tmp/dpep-work.5BSR7A/ethereal-0.10.11/asn2deb 2005-07-17 19:37:02.000000000 +0200 diff --git a/debian/patches/03_preferences.dpatch b/debian/patches/03_preferences.dpatch index 5b0415a04c..e33f63c778 100644 --- a/debian/patches/03_preferences.dpatch +++ b/debian/patches/03_preferences.dpatch @@ -1,4 +1,30 @@ #! /bin/sh /usr/share/dpatch/dpatch-run +## 03_preferences.dpatch by <fred@candle> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: use Debian sensible-browser + +@DPATCH@ +diff -urNad wireshark-0.10.13~/configure.in wireshark-0.10.13/configure.in +--- wireshark-0.10.13~/configure.in 2005-12-08 12:47:00.000000000 +0100 ++++ wireshark-0.10.13/configure.in 2005-12-08 12:53:33.000000000 +0100 +@@ -38,12 +38,12 @@ + # + AC_MSG_ERROR(I couldn't find pod2html; make sure it's installed and in your path) + fi +-AC_PATH_PROG(HTML_VIEWER, htmlview) ++AC_PATH_PROG(HTML_VIEWER, sensible-browser) + if test "x$HTML_VIEWER" = x + then +- AC_DEFINE_UNQUOTED(HTML_VIEWER, "mozilla", [HTML viewer, e.g. mozilla]) ++ AC_DEFINE_UNQUOTED(HTML_VIEWER, "sensible-browser", [HTML viewer, e.g. sensible-browser]) + else +- AC_DEFINE_UNQUOTED(HTML_VIEWER, "htmlview", [HTML viewer, e.g. mozilla]) ++ AC_DEFINE_UNQUOTED(HTML_VIEWER, "sensible-browser", [HTML viewer, e.g. mozilla]) + fi + + AC_PATH_PROG(LEX, flex) +#! /bin/sh /usr/share/dpatch/dpatch-run ## 03_preferences.dpatch by <fpeters@debian.org> ## ## All lines beginning with `## DP:' are a description of the patch. diff --git a/debian/patches/04_drop-capabilities.dpatch b/debian/patches/04_drop-capabilities.dpatch index 260df311d7..8ee8786667 100644 --- a/debian/patches/04_drop-capabilities.dpatch +++ b/debian/patches/04_drop-capabilities.dpatch @@ -5,6 +5,176 @@ ## DP: Drop all capabilities but CAP_NET_RAW @DPATCH@ +diff -urNad wireshark-0.99.2~/configure.in wireshark-0.99.2/configure.in +--- wireshark-0.99.2~/configure.in 2006-07-18 21:59:41.000000000 +0200 ++++ wireshark-0.99.2/configure.in 2006-07-18 21:59:46.000000000 +0200 +@@ -831,6 +831,47 @@ + fi + + ++dnl libcap check ++AC_MSG_CHECKING(whether to use libcap to improve security) ++ ++AC_ARG_WITH(cap, ++[ --with-cap[[=DIR]] use libcap (located in directory DIR, if supplied) to improve security. [[default=yes, if available]]], ++[ ++ if test $withval = no ++ then ++ want_cap=no ++ elif test $withval = yes ++ then ++ want_cap=yes ++ else ++ want_cap=yes ++ cap_dir=$withval ++ fi ++],[ ++ # ++ # Use libcap if it's present, otherwise don't. ++ # ++ want_cap=ifavailable ++ cap_dir= ++]) ++if test "x$want_cap" = "xno" ; then ++ AC_MSG_RESULT(no) ++ cap_message="no (disabled by explicit request)" ++else ++ AC_MSG_RESULT(yes) ++ AC_CHECK_LIB(cap, cap_init, [ ++ AC_DEFINE(HAVE_LIBCAP, 1, [ ++ Define if libcap is available to restrict process capabilities ++ ]) ++ LIBS="$LIBS -lcap" ++ cap_message="yes" ++ ], [ ++ AC_MSG_WARN([libcap check failed]) ++ cap_message="no (check failed)" ++ ]) ++fi ++ ++ + dnl Check if wireshark should be installed setuid + AC_ARG_ENABLE(setuid-install, + [ --enable-setuid-install install wireshark as setuid. DANGEROUS!!! [default=no]],enable_setuid_install=$enableval,enable_setuid_install=no) +@@ -1448,3 +1489,4 @@ + echo " Use IPv6 name resolution : $enable_ipv6" + echo " Use UCD SNMP/Net-SNMP library : $snmp_libs_message" + echo " Use gnutls library : $tls_message" ++echo " Use cap library : $cap_message" +diff -urNad wireshark-0.99.2~/gtk/main.c wireshark-0.99.2/gtk/main.c +--- wireshark-0.99.2~/gtk/main.c 2006-07-17 21:56:45.000000000 +0200 ++++ wireshark-0.99.2/gtk/main.c 2006-07-18 21:59:46.000000000 +0200 +@@ -1718,6 +1718,9 @@ + { + gchar *capture_msg; + ++#ifdef HAVE_LIBCAP ++ dropexcesscapabilities(); ++#endif + + gtk_statusbar_pop(GTK_STATUSBAR(packets_bar), packets_ctx); + +diff -urNad wireshark-0.99.2~/tshark.c wireshark-0.99.2/tshark.c +--- wireshark-0.99.2~/tshark.c 2006-07-17 22:00:06.000000000 +0200 ++++ wireshark-0.99.2/tshark.c 2006-07-18 22:01:35.000000000 +0200 +@@ -749,6 +749,10 @@ + capture_opts_init(&capture_opts, NULL /* cfile */); + #endif + ++#ifdef HAVE_LIBCAP ++ dropexcesscapabilities(); ++#endif ++ + timestamp_set_type(TS_RELATIVE); + timestamp_set_precision(TS_PREC_AUTO); + +diff -urNad wireshark-0.99.2~/util.c wireshark-0.99.2/util.c +--- wireshark-0.99.2~/util.c 2006-07-17 22:00:05.000000000 +0200 ++++ wireshark-0.99.2/util.c 2006-07-18 21:59:46.000000000 +0200 +@@ -40,6 +40,10 @@ + #include <epan/address.h> + #include <epan/addr_resolv.h> + ++#ifdef HAVE_LIBCAP ++#include <sys/capability.h> ++#endif ++ + #include "util.h" + + /* +@@ -180,3 +184,46 @@ + } + return ""; + } ++ ++ ++#ifdef HAVE_LIBCAP ++void dropexcesscapabilities(void) ++{ ++ cap_t cap_d; ++ cap_value_t cap_values[] = { ++ /* capabilities we need to keep */ ++ CAP_NET_RAW, ++ CAP_DAC_READ_SEARCH ++ }; ++ cap_flag_value_t current_cap; ++ ++ cap_d = cap_get_proc(); ++ if (!cap_d) { ++ g_warning("Could not get capabilities\n"); ++ return; ++ } ++ ++ cap_get_flag(cap_d, CAP_NET_RAW, CAP_EFFECTIVE, ¤t_cap); ++ cap_free(&cap_d); ++ if (current_cap == CAP_CLEAR) { ++ return; ++ } ++ ++ cap_d = cap_init(); ++ if (!cap_d) { ++ g_warning("Could not alloc cap struct\n"); ++ return; ++ } ++ ++ cap_clear(cap_d); ++ cap_set_flag(cap_d, CAP_PERMITTED, 2, cap_values, CAP_SET); ++ cap_set_flag(cap_d, CAP_EFFECTIVE, 2, cap_values, CAP_SET); ++ ++ if (cap_set_proc(cap_d) != 0) { ++ g_warning("Could not set capabilities: %s\n", strerror(errno)); ++ cap_free(&cap_d); ++ return; ++ } ++ cap_free(&cap_d); ++} ++#endif /* HAVE_LIBCAP */ +diff -urNad wireshark-0.99.2~/util.h wireshark-0.99.2/util.h +--- wireshark-0.99.2~/util.h 2006-07-17 22:00:06.000000000 +0200 ++++ wireshark-0.99.2/util.h 2006-07-18 22:01:52.000000000 +0200 +@@ -53,6 +53,15 @@ + const char *get_conn_cfilter(void); + + ++#ifdef HAVE_LIBCAP ++/* ++ * Limit the potential impact of undiscovered security vulnerabilities by ++ * dropping all capabilities except the sniffer capability we need to do our ++ * job. ++ */ ++void dropexcesscapabilities(void); ++#endif /* HAVE_LIBCAP */ ++ + #ifdef __cplusplus + } + #endif /* __cplusplus */ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 04_drop-capabilities.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Drop all capabilities but CAP_NET_RAW + +@DPATCH@ diff -urNad --exclude=CVS --exclude=.svn ./config.h.in /tmp/dpep-work.rT2mW8/ethereal-0.10.12/config.h.in --- ./config.h.in 2005-07-31 12:50:13.000000000 +0200 +++ /tmp/dpep-work.rT2mW8/ethereal-0.10.12/config.h.in 2005-07-31 12:54:13.000000000 +0200 diff --git a/debian/patches/05_plugin-libdir.dpatch b/debian/patches/05_plugin-libdir.dpatch index 5c09ba62e4..83c55b551d 100644 --- a/debian/patches/05_plugin-libdir.dpatch +++ b/debian/patches/05_plugin-libdir.dpatch @@ -5,6 +5,34 @@ ## DP: No description. @DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./configure.in /tmp/dpep-work.avwGQ1/wireshark-0.10.11/configure.in +--- ./configure.in 2005-05-02 23:28:53.000000000 +0200 ++++ /tmp/dpep-work.avwGQ1/wireshark-0.10.11/configure.in 2005-07-17 18:46:26.000000000 +0200 +@@ -1130,7 +1130,7 @@ + dnl check whether plugins should be enabled and, if they should be, + dnl check for plugins directory - stolen from Amanda's configure.in + dnl +-plugindir="$libdir/wireshark/plugins/$VERSION" ++plugindir="$libdir/plugins/$VERSION" + AC_ARG_WITH(plugins, + [ --with-plugins[[=DIR]] support plugins (installed in DIR, if supplied).], + [ +@@ -1172,7 +1172,7 @@ + # + # The plugin dissectors reside in ./plugins/PROTO/ + # +-PLUGIN_LIBS="-L../../epan -lwireshark $GLIB_LIBS" ++PLUGIN_LIBS="-L../../epan $GLIB_LIBS" + AC_SUBST(PLUGIN_LIBS) + + dnl libtool defs +#! /bin/sh /usr/share/dpatch/dpatch-run +## 05_plugin-libdir.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ diff -urNad --exclude=CVS --exclude=.svn ./configure.in /tmp/dpep-work.avwGQ1/ethereal-0.10.11/configure.in --- ./configure.in 2005-05-02 23:28:53.000000000 +0200 +++ /tmp/dpep-work.avwGQ1/ethereal-0.10.11/configure.in 2005-07-17 18:46:26.000000000 +0200 diff --git a/debian/patches/06_giop-buffer.dpatch b/debian/patches/06_giop-buffer.dpatch index 2e3864e438..18740118be 100644 --- a/debian/patches/06_giop-buffer.dpatch +++ b/debian/patches/06_giop-buffer.dpatch @@ -5,6 +5,25 @@ ## DP: No description. @DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./epan/dissectors/packet-giop.c /tmp/dpep-work.7N90PO/wireshark-0.10.11/epan/dissectors/packet-giop.c +--- ./epan/dissectors/packet-giop.c 2005-07-17 18:52:08.000000000 +0200 ++++ /tmp/dpep-work.7N90PO/wireshark-0.10.11/epan/dissectors/packet-giop.c 2005-07-17 18:55:32.000000000 +0200 +@@ -1760,6 +1760,8 @@ + + if (len == 0) + return FALSE; ++ if (*offset > header->message_size) ++ return FALSE; + + saved_proto = pinfo->current_proto; + for (i=0; i<len; i++) { +#! /bin/sh /usr/share/dpatch/dpatch-run +## 06_giop-buffer.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ diff -urNad --exclude=CVS --exclude=.svn ./epan/dissectors/packet-giop.c /tmp/dpep-work.7N90PO/ethereal-0.10.11/epan/dissectors/packet-giop.c --- ./epan/dissectors/packet-giop.c 2005-07-17 18:52:08.000000000 +0200 +++ /tmp/dpep-work.7N90PO/ethereal-0.10.11/epan/dissectors/packet-giop.c 2005-07-17 18:55:32.000000000 +0200 diff --git a/debian/patches/07_gcc4.dpatch b/debian/patches/07_gcc4.dpatch index 47c41cdad7..c67c36029b 100644 --- a/debian/patches/07_gcc4.dpatch +++ b/debian/patches/07_gcc4.dpatch @@ -5,6 +5,26 @@ ## DP: No description. @DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./epan/dissectors/packet-cmip.c /tmp/dpep-work.5KBC28/wireshark-0.10.11/epan/dissectors/packet-cmip.c +--- ./epan/dissectors/packet-cmip.c 2005-07-17 18:52:24.000000000 +0200 ++++ /tmp/dpep-work.5KBC28/wireshark-0.10.11/epan/dissectors/packet-cmip.c 2005-07-17 18:53:53.000000000 +0200 +@@ -1895,7 +1895,8 @@ + return offset; + } + +- ++int ++dissect_cmip_InvokeIDType(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_); + + static int + dissect_cmip_Argument(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) { +#! /bin/sh /usr/share/dpatch/dpatch-run +## 07_gcc4.dpatch by <fpeters@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ diff -urNad --exclude=CVS --exclude=.svn ./epan/dissectors/packet-cmip.c /tmp/dpep-work.5KBC28/ethereal-0.10.11/epan/dissectors/packet-cmip.c --- ./epan/dissectors/packet-cmip.c 2005-07-17 18:52:24.000000000 +0200 +++ /tmp/dpep-work.5KBC28/ethereal-0.10.11/epan/dissectors/packet-cmip.c 2005-07-17 18:53:53.000000000 +0200 |