From 5582e56d9d09f5f753111b270859af3d97ffd499 Mon Sep 17 00:00:00 2001 From: piso Date: Tue, 26 Sep 2006 23:26:53 +0000 Subject: 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 --- sys/modules/libalias/Makefile | 32 ++------------------------- sys/modules/libalias/libalias/Makefile | 8 +++++++ sys/modules/libalias/modules/Makefile | 7 ++++++ sys/modules/libalias/modules/Makefile.inc | 3 +++ sys/modules/libalias/modules/cuseeme/Makefile | 6 +++++ sys/modules/libalias/modules/dummy/Makefile | 6 +++++ sys/modules/libalias/modules/ftp/Makefile | 6 +++++ sys/modules/libalias/modules/irc/Makefile | 6 +++++ sys/modules/libalias/modules/modules.inc | 11 +++++++++ sys/modules/libalias/modules/nbt/Makefile | 6 +++++ sys/modules/libalias/modules/pptp/Makefile | 6 +++++ sys/modules/libalias/modules/skinny/Makefile | 6 +++++ sys/modules/libalias/modules/smedia/Makefile | 6 +++++ 13 files changed, 79 insertions(+), 30 deletions(-) create mode 100644 sys/modules/libalias/libalias/Makefile create mode 100644 sys/modules/libalias/modules/Makefile create mode 100644 sys/modules/libalias/modules/Makefile.inc create mode 100644 sys/modules/libalias/modules/cuseeme/Makefile create mode 100644 sys/modules/libalias/modules/dummy/Makefile create mode 100644 sys/modules/libalias/modules/ftp/Makefile create mode 100644 sys/modules/libalias/modules/irc/Makefile create mode 100644 sys/modules/libalias/modules/modules.inc create mode 100644 sys/modules/libalias/modules/nbt/Makefile create mode 100644 sys/modules/libalias/modules/pptp/Makefile create mode 100644 sys/modules/libalias/modules/skinny/Makefile create mode 100644 sys/modules/libalias/modules/smedia/Makefile (limited to 'sys/modules/libalias') diff --git a/sys/modules/libalias/Makefile b/sys/modules/libalias/Makefile index 6a2255e..c8b7dd5 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 +.include diff --git a/sys/modules/libalias/libalias/Makefile b/sys/modules/libalias/libalias/Makefile new file mode 100644 index 0000000..f5b480c --- /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 diff --git a/sys/modules/libalias/modules/Makefile b/sys/modules/libalias/modules/Makefile new file mode 100644 index 0000000..828e40f --- /dev/null +++ b/sys/modules/libalias/modules/Makefile @@ -0,0 +1,7 @@ +# $FreeBSD$ + +.include "modules.inc" + +SUBDIR= ${MODULES} + +.include diff --git a/sys/modules/libalias/modules/Makefile.inc b/sys/modules/libalias/modules/Makefile.inc new file mode 100644 index 0000000..78391c5 --- /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 0000000..dfb5a83 --- /dev/null +++ b/sys/modules/libalias/modules/cuseeme/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_cuseeme +SRCS= alias_cuseeme.c + +.include diff --git a/sys/modules/libalias/modules/dummy/Makefile b/sys/modules/libalias/modules/dummy/Makefile new file mode 100644 index 0000000..ded455a --- /dev/null +++ b/sys/modules/libalias/modules/dummy/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_dummy +SRCS= alias_dummy.c + +.include diff --git a/sys/modules/libalias/modules/ftp/Makefile b/sys/modules/libalias/modules/ftp/Makefile new file mode 100644 index 0000000..07e700b --- /dev/null +++ b/sys/modules/libalias/modules/ftp/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_ftp +SRCS= alias_ftp.c + +.include diff --git a/sys/modules/libalias/modules/irc/Makefile b/sys/modules/libalias/modules/irc/Makefile new file mode 100644 index 0000000..b6e330d --- /dev/null +++ b/sys/modules/libalias/modules/irc/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_irc +SRCS= alias_irc.c + +.include diff --git a/sys/modules/libalias/modules/modules.inc b/sys/modules/libalias/modules/modules.inc new file mode 100644 index 0000000..9582ab5 --- /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 0000000..6d6dd87 --- /dev/null +++ b/sys/modules/libalias/modules/nbt/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_nbt +SRCS= alias_nbt.c + +.include diff --git a/sys/modules/libalias/modules/pptp/Makefile b/sys/modules/libalias/modules/pptp/Makefile new file mode 100644 index 0000000..748f356 --- /dev/null +++ b/sys/modules/libalias/modules/pptp/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_pptp +SRCS= alias_pptp.c + +.include diff --git a/sys/modules/libalias/modules/skinny/Makefile b/sys/modules/libalias/modules/skinny/Makefile new file mode 100644 index 0000000..8560f5e --- /dev/null +++ b/sys/modules/libalias/modules/skinny/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_skinny +SRCS= alias_skinny.c + +.include diff --git a/sys/modules/libalias/modules/smedia/Makefile b/sys/modules/libalias/modules/smedia/Makefile new file mode 100644 index 0000000..245a63e --- /dev/null +++ b/sys/modules/libalias/modules/smedia/Makefile @@ -0,0 +1,6 @@ +# $FreeBSD$ + +KMOD= alias_smedia +SRCS= alias_smedia.c + +.include -- cgit v1.1