Skip site navigation (1)Skip section navigation (2)
Date:      Tue,  7 Oct 2003 17:23:19 -0500 (CDT)
From:      Craig Boston <craig@yekse.gank.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/57723: New port: net/openvmps (Open source VMPS server)
Message-ID:  <20031007222319.9FA3B1027B@owen1492.uf.corelab.com>
Resent-Message-ID: <200310072230.h97MUKmP014456@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         57723
>Category:       ports
>Synopsis:       New port: net/openvmps (Open source VMPS server)
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 07 15:30:20 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Craig Boston
>Release:        FreeBSD 5.1-CURRENT i386
>Organization:
N/A
>Environment:
System: FreeBSD xxxxx 5.1-CURRENT FreeBSD 5.1-CURRENT #0: Wed Aug 27 00:38:33 CDT 2003 root@xxxxx:/usr/obj/usr/src/sys/XXXXX i386
>Description:
	Provides a daemon for the VMPS (VLAN Management Policy Server)
	protocol, which is used by many Cisco switches for automatic
	VLAN assignment.
>How-To-Repeat:
	N/A
>Fix:

--- openvmps.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	openvmps
#	openvmps/pkg-plist
#	openvmps/pkg-descr
#	openvmps/distinfo
#	openvmps/Makefile
#	openvmps/files
#	openvmps/files/patch-aa
#	openvmps/files/patch-ab
#	openvmps/files/vmpsd.sh
#	openvmps/files/vmps.db
#
echo c - openvmps
mkdir -p openvmps > /dev/null 2>&1
echo x - openvmps/pkg-plist
sed 's/^X//' >openvmps/pkg-plist << 'END-of-openvmps/pkg-plist'
Xsbin/vmpsd
X@unexec if cmp -s %D/etc/vmps.db %D/etc/vmps.db.sample; then rm -f %D/etc/vmps.db; fi
Xetc/vmps.db.sample
Xetc/rc.d/vmpsd.sh
END-of-openvmps/pkg-plist
echo x - openvmps/pkg-descr
sed 's/^X//' >openvmps/pkg-descr << 'END-of-openvmps/pkg-descr'
XVMPS (VLAN Management Policy Server) is a way of assigning switch ports to
Xspecific VLANs based on the MAC address of connecting device. OpenVMPS is a
XGPL implementation of VMPS.
X
XWWW: http://vmps.sourceforge.net/
END-of-openvmps/pkg-descr
echo x - openvmps/distinfo
sed 's/^X//' >openvmps/distinfo << 'END-of-openvmps/distinfo'
XMD5 (vmpsd-1.0.tar.gz) = 801cef57df8be2db6536fd60e73a2a89
END-of-openvmps/distinfo
echo x - openvmps/Makefile
sed 's/^X//' >openvmps/Makefile << 'END-of-openvmps/Makefile'
X# New ports collection makefile for:   openvmps
X# Date created:        6 October 2003
X# Whom:                Craig Boston <craig@yekse.gank.org>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	openvmps
XPORTVERSION=	1.0
XCATEGORIES=	net
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	vmps
XDISTNAME=	vmpsd-${PORTVERSION}
X
XMAINTAINER=	craig@yekse.gank.org
XCOMMENT=	A GPL implementation of the VMPS protocol
X
XUSE_RC_SUBR=	yes
X
XGNU_CONFIGURE=	yes
XUSE_GMAKE=	yes
X
XCONFIGURE_ARGS=--bindir=${PREFIX}/sbin
X
XRC_SCRIPTS_SUB=	PREFIX=${PREFIX} \
X		RC_SUBR=${RC_SUBR}
X
Xpost-install:
X	@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
X		${FILESDIR}/vmpsd.sh > ${PREFIX}/etc/rc.d/vmpsd.sh
X	@${CHMOD} 755 ${PREFIX}/etc/rc.d/vmpsd.sh
X	${INSTALL_DATA} -m 644 ${FILESDIR}/vmps.db \
X		${PREFIX}/etc/vmps.db.sample
X	@if [ ! -f ${PREFIX}/etc/vmps.db ]; then \
X		${CP} -p ${PREFIX}/etc/vmps.db.sample ${PREFIX}/etc/vmps.db ; \
X	fi
X
X.include <bsd.port.mk>
END-of-openvmps/Makefile
echo c - openvmps/files
mkdir -p openvmps/files > /dev/null 2>&1
echo x - openvmps/files/patch-aa
sed 's/^X//' >openvmps/files/patch-aa << 'END-of-openvmps/files/patch-aa'
X--- daemon.c.orig	Mon Oct  6 16:32:28 2003
X+++ daemon.c	Mon Oct  6 16:37:02 2003
X@@ -10,8 +10,10 @@
X #ifdef	SETPGRP_VOID
X #define SYSV
X #else
X+#ifndef BSD
X #define	BSD
X #endif
X+#endif
X 
X extern int	errno;
X 
X@@ -30,7 +32,7 @@
X #ifdef	BSD
X 
X 	int	pid;
X-	union	wait	status;
X+	int	status;
X 	while ( (pid = wait3(&status, WNOHANG, (struct rusage *) 0)) > 0 ) ;
X 
X #endif
X@@ -105,7 +107,7 @@
X #ifdef	BSD
X 		RETSIGTYPE sig_child();
X 
X-		signal(SIGCLD, sig_child);
X+		signal(SIGCHLD, sig_child);
X #else
X 		signal(SIGCLD,SIG_IGN);
X #endif
END-of-openvmps/files/patch-aa
echo x - openvmps/files/patch-ab
sed 's/^X//' >openvmps/files/patch-ab << 'END-of-openvmps/files/patch-ab'
X--- data.h.orig	Mon Oct  6 16:38:37 2003
X+++ data.h	Mon Oct  6 16:38:49 2003
X@@ -3,6 +3,7 @@
X #define	__DATA__
X 
X #include <search.h>
X+#include <unistd.h>
X 
X #include <sys/socket.h>
X #include <netinet/in.h>
END-of-openvmps/files/patch-ab
echo x - openvmps/files/vmpsd.sh
sed 's/^X//' >openvmps/files/vmpsd.sh << 'END-of-openvmps/files/vmpsd.sh'
X#!/bin/sh
X
X# Start or stop vmpsd
X# $FreeBSD$
X
X# PROVIDE: vmpsd
X# REQUIRE: DAEMON
X# KEYWORD: FreeBSD shutdown
X#
X# NOTE for FreeBSD 5.0+:
X# If you want this script to start with the base rc scripts
X# move imapd.sh to /etc/rc.d/vmpsd
X
Xprefix=%%PREFIX%%
X
X# Define these vmpsd_* variables in one of these files:
X#       /etc/rc.conf
X#       /etc/rc.conf.local
X#       /etc/rc.conf.d/vmpsd
X#
X# DO NOT CHANGE THESE DEFAULT VALUES HERE 
X#
X[ -z "$vmpsd_enable" ] && vmpsd_enable="NO" # Enable vmpsd
X#vmpsd_program="${prefix}/sbin/vmpsd"       # Location of vmpsd
X[ -z "$vmpsd_flags" ] && vmpsd_flags="-f /usr/local/etc/vmps.db"   # Flags to vmpsd program
X
X. %%RC_SUBR%%
X
Xname="vmpsd"
Xrcvar=`set_rcvar`
Xcommand="${prefix}/sbin/${name}"
X
Xload_rc_config $name
Xrun_rc_command "$1"
END-of-openvmps/files/vmpsd.sh
echo x - openvmps/files/vmps.db
sed 's/^X//' >openvmps/files/vmps.db << 'END-of-openvmps/files/vmps.db'
X! $FreeBSD$
X!
X! Sample VLAN database file for OpenVMPS server
X!
X!vmps domain <domain-name>
X! The VMPS domain must be defined.
X!vmps mode { open | secure }
X! The default mode is open.
X!vmps fallback <vlan-name>
X!vmps no-domain-req { allow | deny }
X!
X! The default value is allow.
Xvmps domain CHANGE_THIS
Xvmps mode open
Xvmps fallback --NONE--
Xvmps no-domain-req deny
X!
X!
X!MAC Addresses
X!
X!vmps-mac-addrs
X!
X! address <addr> vlan-name <vlan_name> 
X!
X! address 00a0.2460.c452 vlan-name ST	
X! address 10a0.2460.c452 vlan-name ST	
X! address 20a0.2460.c452 vlan-name ST	
X! address 30a0.2460.c452 vlan-name ST	
X! address 40a0.2460.c452 vlan-name ST	
X! address 0090.278c.59d5 vlan-name ST	
X!
X!Port Groups
X!
X!vmps-port-group <group-name>
X! device <device-id> { port <port-name> | all-ports }
X!
X!
X!
X!VLAN groups
X!
X!vmps-vlan-group <group-name>
X! vlan-name <vlan-name>
X!
X!
X!VLAN port Policies
X!
X!vmps-port-policies {vlan-name <vlan_name> | vlan-group <group-name> }
X! { port-group <group-name> | device <device-id> port <port-name> }
X!
END-of-openvmps/files/vmps.db
exit
--- openvmps.shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031007222319.9FA3B1027B>