Bug#93208: [Peep-develop] Re: wnpp: RFP: peep, the "Network Auralizer"
- To: Drew Scott Daniels <ddaniels@UMAlumni.mb.ca>, 93208@bugs.debian.org, Tommi Virtanen <tv42b34d@hq.yok.utu.fi>, Ender RedIRIS <david.martinez@rediris.es>, Joey Hess <joeyh@debian.org>, peep-develop@lists.sourceforge.net
- Subject: Bug#93208: [Peep-develop] Re: wnpp: RFP: peep, the "Network Auralizer"
- From: xavier <list.peep-develop@natch.dyndns.org>
- Date: Fri, 10 Mar 2006 08:07:29 -0500
- Message-id: <[🔎] 20060310130729.GA21448@pecos.8d.com>
- Mail-followup-to: Drew Scott Daniels <ddaniels@UMAlumni.mb.ca>, 93208@bugs.debian.org, Tommi Virtanen <tv42b34d@hq.yok.utu.fi>, Ender RedIRIS <david.martinez@rediris.es>, Joey Hess <joeyh@debian.org>, peep-develop@lists.sourceforge.net
- Reply-to: xavier <list.peep-develop@natch.dyndns.org>, 93208@bugs.debian.org
- In-reply-to: <20050929201224.GA4484@javifsp.no-ip.org>
- References: <20050925211230.GA22348@zimmer> <20050929201224.GA4484@javifsp.no-ip.org>
On Thu, Sep 29, 2005 at 10:12:24PM +0200, Javier Fernández-Sanguino Peña wrote:
> On Sun, Sep 25, 2005 at 04:12:30PM -0500, Drew Scott Daniels wrote:
> > reopen 93208 =
> > done
> >
> > Hi,
> > I'm cc'ing the developers of peep. For the history of this bug see:
> > http://bugs.debian.org/93208
>
> Ok. Developers, please read this mail and see attached patch as is fixes some
> bugs in your code.
would someone like a cvs access so that you could do the modifications you need
yourself ?
thanks.
xavier.
>
> Javier
> --- peep-0.5.0-rc2.orig/server/cmdline.c
> +++ peep-0.5.0-rc2/server/cmdline.c
> @@ -316,7 +316,7 @@
> {
>
> printVersion ();
> - printf ("
> + printf ("\
> Usage: %s [OPTIONS]...\n\
> -h --help Print help and exit\n\
> -V --version Print version and exit\n\
> --- peep-0.5.0-rc2.orig/server/debug.c
> +++ peep-0.5.0-rc2/server/debug.c
> @@ -18,6 +18,9 @@
>
> #include "config.h"
> #include <stdarg.h>
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include <string.h>
> #include "debug.h"
>
> /* For time formatting */
> @@ -83,7 +86,7 @@
>
> if (fclose (log_handle) != 0)
> perror ("Error closing server log file");
> -
> + return 0;
> }
>
> void log (int level, char *s, ...)
> --- peep-0.5.0-rc2.orig/server/main.c
> +++ peep-0.5.0-rc2/server/main.c
> @@ -20,6 +20,7 @@
> #include <stdio.h>
> #include <signal.h>
> #include <errno.h>
> +#include <string.h>
>
> #include "main.h"
> #include "cmdline.h"
> @@ -30,6 +31,7 @@
> #include "mixer.h"
> #include "playback.h"
> #include "debug.h"
> +#include "parser.h"
>
> static struct args_info args_info;
> static FILE *pid_file = NULL;
> @@ -84,7 +86,7 @@
> else {
>
> /* Write our pid out to the file */
> - fprintf (pid_file, "%d\n", pid_file);
> + fprintf (pid_file, "%d\n", pid);
> fflush (pid_file);
> fclose (pid_file);
>
> @@ -271,6 +273,8 @@
>
> }
>
> + /* Should really return something useful here */
> + return 1;
> }
>
> void printGreeting (void)
> --- peep-0.5.0-rc2.orig/server/thread.h
> +++ peep-0.5.0-rc2/server/thread.h
> @@ -19,6 +19,7 @@
> #ifndef __PEEP_THREAD_H__
> #define __PEEP_THREAD_H__
>
> +#include <stdlib.h>
> #include <pthread.h>
> #include <semaphore.h>
>
> --- peep-0.5.0-rc2.orig/debian/changelog
> +++ peep-0.5.0-rc2/debian/changelog
> @@ -0,0 +1,11 @@
> +peep (0.5.0-rc2-1) unstable; urgency=low
> +
> + * Initial release Closes: #93208
> + * Fixed compilation error in cmdline
> + * Fixed compilation warnings due to some libraries not being included
> + and an error in the pidfile generation (the pid was not added to the
> + file)
> + * Provide an init.d and logrotate.d configuration files (UNTESTED)
> +
> + -- Javier Fernandez-Sanguino Pen~a <jfs@computer.org> Thu, 29 Sep 2005 21:19:16 +0200
> +
> --- peep-0.5.0-rc2.orig/debian/compat
> +++ peep-0.5.0-rc2/debian/compat
> @@ -0,0 +1 @@
> +4
> --- peep-0.5.0-rc2.orig/debian/peep.init
> +++ peep-0.5.0-rc2/debian/peep.init
> @@ -0,0 +1,112 @@
> +#! /bin/sh
> +#
> +# peep Start the sound server
> +#
> +# Author: Devin
> +# Modified for Debian by Javier Fernandez-Sanguino Peña
> +#
> +# description: Kickass Sound Server and network / log monitor
> +# processname: peepd
> +# pidfile: $RUNDIR/peepd.pid
> +# config: /etc/default/peep
> +# config: /etc/peep.conf
> +
> +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
> +DAEMON=/usr/sbin/peep
> +NAME=peep
> +DESC="PEEP server"
> +LOGDIR=/var/log/peep
> +LOCKDIR=/var/lock/peep
> +RUNDIR=/var/run/peep
> +ARGS="-l $LOGDIR/$NAME.log"
> +
> +test -x $DAEMON || exit 0
> +
> +# Include peep defaults if available
> +if [ -f /etc/default/peep ] ; then
> + . /etc/default/peep
> +fi
> +
> +set -e
> +
> +RETVAL=0
> +
> +running()
> +{
> + # No pidfile, probably no daemon present
> + #
> + [ ! -f "$PIDFILE" ] && return 1
> + pid=`cat $PIDFILE`
> + # No pid, probably no daemon present
> + [ -z "$pid" ] && return 1
> + [ ! -d /proc/$pid ] && return 1
> + cmd=`cat /proc/$pid/cmdline | tr "\000" "\n"|head -n 1 |cut -d : -f 1`
> + # TODO: This might be more portable than looking for /proc/pid/
> + # if ps -p $pidval | grep -q $NAME; then
> +
> + # No daemon?
> + [ "$cmd" != "$DAEMON" ] && return 1
> + return 0
> +}
> +
> +# See how we were called.
> +case "$1" in
> + start)
> + echo -n "Starting $DESC.."
> + start-stop-daemon --start --quiet --pidfile $RUNDIR/$NAME.pid \
> + --exec $DAEMON -- $ARGS
> + RETVAL=$?
> + if [ $RETVAL -eq 0 ] ; then
> + touch $LOCKDIR/peepd
> + echo "$NAME."
> + else
> + echo "failed."
> + fi
> + if [ -x /usr/bin/logparser ] ; then
> + echo -n "Starting Log Watcher:"
> + /usr/bin/logparser --pidfile=$RUNDIR/logparser.pid >>$LOGDIR/startup.log 2>&1
> + RETVAL=$?
> + if [ $RETVAL -eq 0 ] ; then
> + touch $LOCKDIR/logparser
> + echo "done."
> + else
> + echo "failed."
> + fi
> + fi
> + ;;
> + stop)
> + echo -n "Stopping $DESC:"
> + start-stop-daemon --stop --quiet --pidfile $RUNDIR/$NAME.pid \
> + --exec $DAEMON
> + if [ -x /usr/bin/logparser ] ; then
> + echo -n "Stopping Log Watcher: "
> + start-stop-daemon --stop --quiet --pidfile $RUNDIR/logparser.pid \
> + --exec /usr/bin/logparser
> + if [ $RETVAL -eq 0 ]; then
> + rm -f $LOCKDIR/logparser
> + echo "done."
> + else
> + echo "failed."
> + fi
> + fi
> + ;;
> + status)
> + echo -n "$LABEL is "
> + if running ; then
> + echo "running"
> + else
> + echo " not running."
> + exit 1
> + fi
> + ;;
> + restart|reload|force-reload)
> + $0 stop
> + $0 start
> + RETVAL=$?
> + ;;
> + *)
> + echo "Usage: peep {start|stop|status|restart|reload|force-reload}"
> + exit 1
> +esac
> +
> +exit $REVAL
> --- peep-0.5.0-rc2.orig/debian/dirs
> +++ peep-0.5.0-rc2/debian/dirs
> @@ -0,0 +1,7 @@
> +usr/bin
> +etc/init.d
> +etc/logrotate.d
> +usr/share/doc
> +var/log/peep
> +var/lock/peep
> +var/run/peep
> --- peep-0.5.0-rc2.orig/debian/peep.logrotate
> +++ peep-0.5.0-rc2/debian/peep.logrotate
> @@ -0,0 +1,11 @@
> +/var/log/peep/startup.log {
> + missingok
> + notifempty
> + create 640 root adm
> + weekly
> + rotate 10
> + compress
> + postrotate
> + [ -x /usr/bin/logparser ] && /etc/init.d/peep reload
> + endscript
> +}
> --- peep-0.5.0-rc2.orig/debian/rules
> +++ peep-0.5.0-rc2/debian/rules
> @@ -0,0 +1,99 @@
> +#!/usr/bin/make -f
> +# -*- makefile -*-
> +# Sample debian/rules that uses debhelper.
> +# This file was originally written by Joey Hess and Craig Small.
> +# As a special exception, when this file is copied by dh-make into a
> +# dh-make output file, you may use that output file without restriction.
> +# This special exception was added by Craig Small in version 0.37 of dh-make.
> +
> +# Uncomment this to turn on verbose mode.
> +#export DH_VERBOSE=1
> +
> +
> +# These are used for cross-compiling and for saving the configure script
> +# from having to guess our platform (since we know it already)
> +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
> +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
> +
> +
> +CFLAGS = -Wall -g
> +
> +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
> + CFLAGS += -O0
> +else
> + CFLAGS += -O2
> +endif
> +
> +config.status: configure
> + dh_testdir
> + # Add here commands to configure the package.
> + CFLAGS="$(CFLAGS) -Wl,-z,defs" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
> +
> +
> +build: build-stamp
> +
> +build-stamp: config.status
> + dh_testdir
> + $(MAKE)
> + #docbook-to-man debian/peep.sgml > peep.1
> +
> + touch build-stamp
> +
> +clean:
> + dh_testdir
> + dh_testroot
> + rm -f build-stamp
> + -$(MAKE) distclean
> +ifneq "$(wildcard /usr/share/misc/config.sub)" ""
> + cp -f /usr/share/misc/config.sub config.sub
> +endif
> +ifneq "$(wildcard /usr/share/misc/config.guess)" ""
> + cp -f /usr/share/misc/config.guess config.guess
> +endif
> +
> +
> + dh_clean
> +
> +install: build
> + dh_testdir
> + dh_testroot
> + dh_clean -k
> + dh_installdirs
> + $(MAKE) install DESTDIR=$(CURDIR)/debian/peep
> + mv $(CURDIR)/debian/peep/usr/doc/peep-0.5.0-rc2 $(CURDIR)/debian/peep/usr/share/doc/peep
> + # Not needed files/dirs
> + rm -rf $(CURDIR)/debian/peep/usr/doc/
> + rm -f $(CURDIR)/debian/peep/usr/share/doc/peep/COPYING $(CURDIR)/debian/peep/usr/share/doc/CHANGELOG
> +
> +
> +# Build architecture-independent files here.
> +binary-indep: build install
> +# We have nothing to do by default.
> +
> +# Build architecture-dependent files here.
> +binary-arch: build install
> + dh_testdir
> + dh_testroot
> + dh_installchangelogs CHANGELOG
> + dh_installdocs
> + dh_installexamples
> +# dh_install
> +# dh_installmenu
> +# dh_installdebconf
> + dh_installlogrotate
> + dh_installinit
> +# dh_installcron
> +# dh_installinfo
> + dh_installman
> + dh_link
> + dh_strip
> + dh_compress
> + dh_fixperms
> + dh_installdeb
> + dh_shlibdeps
> + dh_gencontrol
> + dh_md5sums
> + dh_builddeb
> +
> +binary: binary-indep binary-arch
> +.PHONY: build clean binary-indep binary-arch binary install
> --- peep-0.5.0-rc2.orig/debian/postinst
> +++ peep-0.5.0-rc2/debian/postinst
> @@ -0,0 +1,81 @@
> +#! /bin/bash
> +# postinst script for peep
> +#
> +# TODO: This needs to be converted to debconf and needs to be reviewed
> +# since it was based in the 0.4.5 code
> +#
> +# see: dh_installdeb(1)
> +
> +set -e
> +
> +# MAINTAINER: Remove this when you review the code
> +exit 1
> +
> +case "$1" in
> +configure)
> + # The following automatic configuration is taken from Peep's
> + # distribution's gen_conf
> +
> +##################################################################
> +# Section for generating an "out-of-the-box" Peep configuration
> +# file from a template.
> +#
> +# This is my initial pass at this and works great on a linux
> +# machine. It'll need to be expanded for portability at some
> +# point and we'll probably want to move it to its own script.
> +
> + ERR=0
> + if test ! -s /etc/peep.conf; then
> + echo "Attempting to generate a localized peep.conf from template..."
> +
> +# Grab hostname
> + UNAME_NODENAME=`uname -n 2>/dev/null` || UNAME_NODENAME=hostname_unknown
> +
> +# First check if we can run ifconfig without args
> + if `ifconfig > /dev/null 2>&1`; then
> +# head -1 to make sure one one address is used if multiple is
> +# available
> + BCAST_ADDR=`$IFCONFIG | awk '/Bcast:/ { split($3, a, /:/); print a[2] }' | head -1`
> + else
> +# For now, just return unknown. We'll work on this
> + echo "Couldn't determine local broadcast address..."
> + echo "Setting address: broadcast_unknown"
> + ERR=1
> + BCAST_ADDR=broadcast_unknown
> + fi
> +
> +# Do a 'quotemeta' on the prefix so we can sub with it
> + PREFIX=`echo /usr/share | sed -e 's/\//\\\\\//g'`
> +
> +# Perform substitutions
> + sed -e "s/__HOST/$UNAME_NODENAME/;" \
> + -e "s/__BROADCAST/$BCAST_ADDR/;" \
> + -e "s/__PREFIX/$PREFIX/" \
> + < /etc/peep.conf.template > /etc/peep.conf
> +
> + if test ! $ERR -eq 0; then
> + echo "/etc/peep.conf was only partially generated..."
> + echo "Please review manually."
> + fi
> + else
> + echo "/etc/peep.conf already exists. Nothing done."
> + fi
> +
> + ;;
> +
> +abort-upgrade|abort-remove|abort-deconfigure)
> +
> + ;;
> +
> +*)
> + echo "postinst called with unknown argument \`$1'" >&2
> + exit 1
> +;;
> +esac
> +
> +# dh_installdeb will replace this with shell code automatically
> +# generated by other debhelper scripts.
> +
> +#DEBHELPER#
> +
> +exit 0
> --- peep-0.5.0-rc2.orig/debian/control
> +++ peep-0.5.0-rc2/debian/control
> @@ -0,0 +1,17 @@
> +Source: peep
> +Section: admin
> +Priority: optional
> +Maintainer: Javier Fernandez-Sanguino Pen~a <jfs@computer.org>
> +Build-Depends: debhelper (>= 4.0.0), autotools-dev, libexpat1-dev
> +Standards-Version: 3.6.2
> +
> +Package: peep
> +Architecture: any
> +Depends: libnet-perl, libfilesys-diskspace-perl, libproc-process-perl, libfile-tail-perl, libtime-hires-perl, ${shlibs:Depends}
> +Description: The Network Auralizer
> + Tool use for monitoring your network with sound. Peep is a network
> + monitoring tool that represents network information via an audio
> + interface. Network diagnostics are made not only based on single
> + network events but whether the network sounds "normal".
> + .
> + Homepage: http://sourceforge.net/projects/peep
> --- peep-0.5.0-rc2.orig/debian/README.Debian
> +++ peep-0.5.0-rc2/debian/README.Debian
> @@ -0,0 +1,16 @@
> +
> +NOTES for peep
> +--------------
> +
> +TODO:
> +- Install docs under docs/ in source and write a doc-base file for those
> +- Write a manpage for the peepd binary
> +- Provide the client (perl stuff) (in a separate package?)
> +- [CHECK] SystemMonitor might not start properly (needs the Filesys:DiskFree
> + CPAN Perl module)
> +- Enable the server? Use OpenSSL?
> +- Does the server need to Depend: on the peep-sounds package?
> +
> +--- Javier Fernandez-Sanguino
> +Thu, 29 Sep 2005 22:08:33 +0200
> +
> --- peep-0.5.0-rc2.orig/debian/copyright
> +++ peep-0.5.0-rc2/debian/copyright
> @@ -0,0 +1,39 @@
> +This package was debianized by Javier Fernandez-Sanguino Peña
> +Mon, 21 Oct 2002 15:05:18 +0200.
> +
> +It was downloaded from
> +http://sourceforge.net/project/showfiles.php?group_id=15807
> +also at http://sourceforge.net/projects/peep
> +
> +Upstream Authors:
> +Michael Gilfix <mgilfix_AT_eecs.tufts.edu>
> +Collin Starkweather <collin.starkweather_AT_colorado.edu>
> +Xavier Renault (xavier_AT_ideasandassociates.com>
> +
> +Copyright:
> +
> +You are free to distribute this software under the terms of the GNU
> +General Public License version 2.
> +
> +On Debian systems, the complete text of the GNU General Public License can
> +be found in /usr/share/common-licenses/GPL file.
> +
> + Copyright (c) 2000 Michael Gilfix <mgilfix@eecs.tufts.edu>
> + some portions are:
> + Copyright (C) 2001 Collin Starkweather <collin.starkweather@colorado.edu>
> +
> + 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., 51 Franklin St, Fifth Floor, Boston, MA
> + 02110-1301 USA
> +
> --- peep-0.5.0-rc2.orig/debian/watch
> +++ peep-0.5.0-rc2/debian/watch
> @@ -0,0 +1,8 @@
> +# watch control file for peep
> +
> +# Compulsory line, this is a version 3 file
> +version=3
> +
> +http://sf.net/peep/Peep-(.*)\.tar\.gz
> +
> +
> --- peep-0.5.0-rc2.orig/debian/docs
> +++ peep-0.5.0-rc2/debian/docs
> @@ -0,0 +1,2 @@
> +README
> +TODO
--
xavier
Reply to: