diff options
author | Paolo Pisati <piso@FreeBSD.org> | 2006-09-26 23:26:53 +0000 |
---|---|---|
committer | Paolo Pisati <piso@FreeBSD.org> | 2006-09-26 23:26:53 +0000 |
commit | be4f3cd0d9c4f0d7755b1bf24c59ca26c336dccf (patch) | |
tree | 5e258090de6b0498a8722ea100fedca736af05b6 /sys/modules/libalias | |
parent | 31e2a87d4d16b038515e512cc2489f3551963ff4 (diff) | |
download | src-be4f3cd0d9c4f0d7755b1bf24c59ca26c336dccf.tar.gz src-be4f3cd0d9c4f0d7755b1bf24c59ca26c336dccf.zip |
Summer of Code 2005: improve libalias - part 1 of 2
With the first part of my previous Summer of Code work, we get:
-made libalias modular:
-support for 'particular' protocols (like ftp/irc/etcetc) is no more
hardcoded inside libalias, but it's available through external
modules loadable at runtime
-modules are available both in kernel (/boot/kernel/alias_*.ko) and
user land (/lib/libalias_*)
-protocols/applications modularized are: cuseeme, ftp, irc, nbt, pptp,
skinny and smedia
-added logging support for kernel side
-cleanup
After a buildworld, do a 'mergemaster -i' to install the file libalias.conf
in /etc or manually copy it.
During startup (and after every HUP signal) user land applications running
the new libalias will try to read a file in /etc called libalias.conf:
that file contains the list of modules to load.
User land applications affected by this commit are ppp and natd:
if libalias.conf is present in /etc you won't notice any difference.
The only kernel land bit affected by this commit is ng_nat:
if you are using ng_nat, and it doesn't correctly handle
ftp/irc/etcetc sessions anymore, remember to kldload
the correspondent module (i.e. kldload alias_ftp).
General information and details about the inner working are available
in the libalias man page under the section 'MODULAR ARCHITECTURE
(AND ipfw(4) SUPPORT)'.
NOTA BENE: this commit affects _ONLY_ libalias, ipfw in-kernel nat
support will be part of the next libalias-related commit.
Approved by: glebius
Reviewed by: glebius, ru
Notes
Notes:
svn path=/head/; revision=162674
Diffstat (limited to 'sys/modules/libalias')
-rw-r--r-- | sys/modules/libalias/Makefile | 32 | ||||
-rw-r--r-- | sys/modules/libalias/libalias/Makefile | 8 | ||||
-rw-r--r-- | sys/modules/libalias/modules/Makefile | 7 | ||||
-rw-r--r-- | sys/modules/libalias/modules/Makefile.inc | 3 | ||||
-rw-r--r-- | sys/modules/libalias/modules/cuseeme/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/dummy/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/ftp/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/irc/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/modules.inc | 11 | ||||
-rw-r--r-- | sys/modules/libalias/modules/nbt/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/pptp/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/skinny/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/libalias/modules/smedia/Makefile | 6 |
13 files changed, 79 insertions, 30 deletions
diff --git a/sys/modules/libalias/Makefile b/sys/modules/libalias/Makefile index 6a2255e5de48..c8b7dd58e774 100644 --- a/sys/modules/libalias/Makefile +++ b/sys/modules/libalias/Makefile @@ -1,33 +1,5 @@ # $FreeBSD$ -.PATH: ${.CURDIR}/../../netinet/libalias +SUBDIR= libalias modules -KMOD= libalias -SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ - alias_nbt.c alias_pptp.c alias_proxy.c alias_skinny.c alias_smedia.c \ - alias_util.c -INCS= alias.h - -EXPORT_SYMS= LibAliasInit \ - LibAliasUninit \ - LibAliasSetAddress \ - LibAliasSetMode \ - LibAliasSkinnyPort \ - LibAliasIn \ - LibAliasOut \ - LibAliasRedirectPort \ - LibAliasRedirectAddr \ - LibAliasAddServer \ - LibAliasRedirectDynamic \ - LibAliasRedirectDelete \ - LibAliasProxyRule \ - LibAliasRedirectProto \ - LibAliasSaveFragment \ - LibAliasGetFragment \ - LibAliasFragmentIn \ - LibAliasSetTarget \ - LibAliasCheckNewLink \ - LibAliasInternetChecksum \ - LibAliasUnaliasOut - -.include <bsd.kmod.mk> +.include <bsd.subdir.mk> diff --git a/sys/modules/libalias/libalias/Makefile b/sys/modules/libalias/libalias/Makefile new file mode 100644 index 000000000000..f5b480c72cab --- /dev/null +++ b/sys/modules/libalias/libalias/Makefile @@ -0,0 +1,8 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../../netinet/libalias + +KMOD= libalias +SRCS= alias.c alias_db.c alias_proxy.c alias_util.c alias_old.c alias_mod.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/Makefile b/sys/modules/libalias/modules/Makefile new file mode 100644 index 000000000000..828e40faae78 --- /dev/null +++ b/sys/modules/libalias/modules/Makefile @@ -0,0 +1,7 @@ +# $FreeBSD$ + +.include "modules.inc" + +SUBDIR= ${MODULES} + +.include <bsd.subdir.mk> diff --git a/sys/modules/libalias/modules/Makefile.inc b/sys/modules/libalias/modules/Makefile.inc new file mode 100644 index 000000000000..78391c597b86 --- /dev/null +++ b/sys/modules/libalias/modules/Makefile.inc @@ -0,0 +1,3 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../../../netinet/libalias diff --git a/sys/modules/libalias/modules/cuseeme/Makefile b/sys/modules/libalias/modules/cuseeme/Makefile new file mode 100644 index 000000000000..dfb5a83d2790 --- /dev/null +++ b/sys/modules/libalias/modules/cuseeme/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_cuseeme +SRCS= alias_cuseeme.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/dummy/Makefile b/sys/modules/libalias/modules/dummy/Makefile new file mode 100644 index 000000000000..ded455a8dfe7 --- /dev/null +++ b/sys/modules/libalias/modules/dummy/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_dummy +SRCS= alias_dummy.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/ftp/Makefile b/sys/modules/libalias/modules/ftp/Makefile new file mode 100644 index 000000000000..07e700b40956 --- /dev/null +++ b/sys/modules/libalias/modules/ftp/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_ftp +SRCS= alias_ftp.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/irc/Makefile b/sys/modules/libalias/modules/irc/Makefile new file mode 100644 index 000000000000..b6e330d9e1b8 --- /dev/null +++ b/sys/modules/libalias/modules/irc/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_irc +SRCS= alias_irc.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/modules.inc b/sys/modules/libalias/modules/modules.inc new file mode 100644 index 000000000000..9582ab53828c --- /dev/null +++ b/sys/modules/libalias/modules/modules.inc @@ -0,0 +1,11 @@ +# $FreeBSD$ + +MODULES = +MODULES += cuseeme +MODULES += dummy +MODULES += ftp +MODULES += irc +MODULES += nbt +MODULES += pptp +MODULES += skinny +MODULES += smedia diff --git a/sys/modules/libalias/modules/nbt/Makefile b/sys/modules/libalias/modules/nbt/Makefile new file mode 100644 index 000000000000..6d6dd8728b6a --- /dev/null +++ b/sys/modules/libalias/modules/nbt/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_nbt +SRCS= alias_nbt.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/pptp/Makefile b/sys/modules/libalias/modules/pptp/Makefile new file mode 100644 index 000000000000..748f356e9fa7 --- /dev/null +++ b/sys/modules/libalias/modules/pptp/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_pptp +SRCS= alias_pptp.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/skinny/Makefile b/sys/modules/libalias/modules/skinny/Makefile new file mode 100644 index 000000000000..8560f5ed131f --- /dev/null +++ b/sys/modules/libalias/modules/skinny/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_skinny +SRCS= alias_skinny.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/libalias/modules/smedia/Makefile b/sys/modules/libalias/modules/smedia/Makefile new file mode 100644 index 000000000000..245a63e8cfec --- /dev/null +++ b/sys/modules/libalias/modules/smedia/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_smedia +SRCS= alias_smedia.c + +.include <bsd.kmod.mk> |