Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/dist/pf Initial version.
details: https://anonhg.NetBSD.org/src/rev/3c4fbddff217
branches: trunk
changeset: 749502:3c4fbddff217
user: martti <martti%NetBSD.org@localhost>
date: Tue Dec 01 06:27:57 2009 +0000
description:
Initial version.
diffstat:
dist/pf/pf2netbsd | 273 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 273 insertions(+), 0 deletions(-)
diffs (277 lines):
diff -r c2a81809a53b -r 3c4fbddff217 dist/pf/pf2netbsd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/pf/pf2netbsd Tue Dec 01 06:27:57 2009 +0000
@@ -0,0 +1,273 @@
+#!/bin/sh
+#
+# $NetBSD: pf2netbsd,v 1.1 2009/12/01 06:27:57 martti Exp $
+#
+# Copyright (c) 2009 The NetBSD Foundation, Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+
+usage()
+{
+ cat << EOF
+
+Usage: `basename $0` [options] srcdir dstdir
+
+where
+
+-h This help
+-v Be verbose
+
+Example:
+
+`basename $0` /tmp/openbsd-4.2 /tmp/netbsd-4.2
+
+EOF
+ exit 1
+}
+
+verbose()
+{
+ ${VERBOSE} && echo $*
+ eval $*
+}
+
+mklist()
+{
+ # $1 = filename
+
+ if [ -z "$1" ]; then
+ echo "ERROR: Not enough arguments for mklist!"
+ exit 1
+ fi
+ cat > $1 << EOF
+etc/pf.conf
+etc/pf.os
+libexec/tftp-proxy/filter.c
+libexec/tftp-proxy/filter.h
+libexec/tftp-proxy/Makefile
+libexec/tftp-proxy/tftp-proxy.8
+libexec/tftp-proxy/tftp-proxy.c
+sbin/pfctl/Makefile
+sbin/pfctl/parse.y
+sbin/pfctl/pfctl.8
+sbin/pfctl/pfctl_altq.c
+sbin/pfctl/pfctl.c
+sbin/pfctl/pfctl.h
+sbin/pfctl/pfctl_optimize.c
+sbin/pfctl/pfctl_osfp.c
+sbin/pfctl/pfctl_parser.c
+sbin/pfctl/pfctl_parser.h
+sbin/pfctl/pfctl_qstats.c
+sbin/pfctl/pfctl_radix.c
+sbin/pfctl/pfctl_table.c
+sbin/pfctl/pf_print_state.c
+sbin/pflogd/Makefile
+sbin/pflogd/pflogd.8
+sbin/pflogd/pflogd.c
+sbin/pflogd/pflogd.h
+sbin/pflogd/privsep.c
+sbin/pflogd/privsep_fdpass.c
+share/man/man4/pf.4
+share/man/man4/pflog.4
+share/man/man4/pfsync.4
+share/man/man5/pf.conf.5
+share/man/man5/pf.os.5
+share/pf/ackpri
+share/pf/faq-example1
+share/pf/faq-example2
+share/pf/faq-example3
+share/pf/Makefile
+share/pf/queue1
+share/pf/queue2
+share/pf/queue3
+share/pf/queue4
+share/pf/spamd
+usr.sbin/authpf/authpf.8
+usr.sbin/authpf/authpf.c
+usr.sbin/authpf/Makefile
+usr.sbin/authpf/pathnames.h
+usr.sbin/ftp-proxy/filter.c
+usr.sbin/ftp-proxy/filter.h
+usr.sbin/ftp-proxy/ftp-proxy.8
+usr.sbin/ftp-proxy/ftp-proxy.c
+usr.sbin/ftp-proxy/Makefile
+sys/net/if.c
+sys/net/if.h
+sys/net/if_pflog.c
+sys/net/if_pflog.h
+sys/net/if_pfsync.c
+sys/net/if_pfsync.h
+sys/net/pf.c
+sys/net/pf_if.c
+sys/net/pf_ioctl.c
+sys/net/pf_norm.c
+sys/net/pf_osfp.c
+sys/net/pf_ruleset.c
+sys/net/pf_table.c
+sys/net/pfvar.h
+sys/netinet/tcp_subr.c
+sys/netinet/tcp_var.h
+EOF
+}
+
+openbsd2netbsd()
+{
+ # $1 = srcdir
+ # $2 = dstdir
+
+ if [ -z "$2" ]; then
+ echo "ERROR: Not enough arguments for openbsd2netbsd!"
+ exit 1
+ fi
+ if [ -d $2/dist/pf ]; then
+ echo "ERROR: $2 already exists!"
+ exit 1
+ fi
+ if [ -d "$1/src" ]; then
+ echo "ERROR: Use $1/src as the srcdir!"
+ exit 1
+ fi
+
+ cd $1 || exit 1
+
+ # Copy from OpenBSD
+ verbose "mklist /tmp/pf.$$"
+ verbose "mkdir -p $2"
+ verbose "tar -c -T /tmp/pf.$$ -f- | tar -x -f- -C $2"
+
+ # Some files have different name/location in NetBSD
+ verbose cd $2
+ verbose mkdir -p dist/pf sys/dist/pf
+
+ verbose cd $2/sys/net
+ verbose mv if.c if_compat.c
+ verbose mv if.h if_compat.h
+ verbose cp pf.c pf_mtag.c
+ verbose cp pfvar.h pf_mtag.h
+
+ verbose cd $2/sys/netinet
+ verbose mv tcp_subr.c tcp_rndiss.c
+ verbose mv tcp_var.h tcp_rndiss.h
+
+ verbose cd $2
+ verbose mv etc libexec sbin share usr.sbin dist/pf/
+
+ verbose cd $2/sys
+ verbose mv net netinet dist/pf/
+
+ # Remove references to the OpenBSD CVS
+ find $2 -name CVS | xargs rm -rf
+
+# # Remove the $'s around various CVS keywords
+# find $2 -type f | \
+# while read f
+# do
+# sed -e 's/\$\(Id.*\) \$/\1/' \
+# -e 's/\$\(Date.*\) \$/\1/' \
+# -e 's/\$\(Header.*\) \$/\1/' \
+# ${f} > ${f}.fixed
+# mv ${f}.fixed ${f}
+# echo "Deactivated CVS keywords from ${f}"
+# done
+
+ # Add the NetBSD keyword
+ find $2 -type f -name '*.[chly]' | \
+ grep -v -e if_compat -e tcp_rndiss | \
+ while read f
+ do
+ sed 1q < ${f} | grep -q '\$NetBSD' || (
+ cat > /tmp/pf2n.$$ << EOF
+/* \$NetBSD\$ */
+EOF
+ cat ${f} >> /tmp/pf2n.$$
+ mv /tmp/pf2n.$$ ${f}
+ )
+ done
+ find $2 -type f -name '*.[0-9]' | \
+ while read f
+ do
+ sed 1q < ${f} | grep -q '\$NetBSD' || (
+ cat > /tmp/pf2n.$$ << EOF
+.\" \$NetBSD\$
+EOF
+ cat ${f} >> /tmp/pf2n.$$
+ mv /tmp/pf2n.$$ ${f}
+ )
+ done
+ find $2 -type f -name 'faq*' -o -name 'queue*' \
+ -o -name 'ackpri' -o -name 'spamd' | \
+ while read f
+ do
+ sed 1q < ${f} | grep -q '\$NetBSD' || (
+ cat > /tmp/pf2n.$$ << EOF
+# \$NetBSD\$
+EOF
+ cat ${f} >> /tmp/pf2n.$$
+ mv /tmp/pf2n.$$ ${f}
+ )
+ done
+ find $2 -type f -name 'Makefile' | \
+ while read f
+ do
+ sed 1q < ${f} | grep -q '\$NetBSD' || (
+ cat > /tmp/pf2n.$$ << EOF
+# \$NetBSD\$
+EOF
+ cat ${f} >> /tmp/pf2n.$$
+ mv /tmp/pf2n.$$ ${f}
+ )
+ done
+}
+
+##
+## MAIN
+##
+VERBOSE=false
+
+ARGV=`getopt hv ${*}`
+[ ${?} != 0 ] && exit 1
+set -- ${ARGV}
+for i
+do
+ case "${i}" in
+ -h)
+ usage
+ shift
+ ;;
+ -v)
+ VERBOSE=true
+ shift
+ ;;
+ --)
+ shift
+ ;;
+ esac
+done
+[ $# -ne 2 ] && usage
+
+openbsd2netbsd $1 $2
+rm -f /tmp/pf.$$
+echo ""
+echo "The sources-to-be-imported are now in $2"
+echo ""
Home |
Main Index |
Thread Index |
Old Index