pkgsrc/net/freeradius2/Makefile
adrianp 74560b114e Update to 2.1.1
Patches mainly from adam@ with some changes by me

05 September 2008 - Version 2.1.0 has been released.

The focus of this release is features.

Feature Improvements
* Clients may now be defined dynamically, based on IP address. See raddb/sites-available/dynamic-clients.
* SNMP support is now available through an experimental Perl script. See scripts/snmp-proxy/README
* SNMP statistics are also available through Status-Server packets. See raddb/sites-available/status
* Added more Microsoft attributes from bug #568.
* The linelog module has more functionality and flexibility. See raddb/modules/linelog.
* The debugging output has been sanitized. It should be much more readable.
* Debug logs can now be turned on/off while the server is running, for a user, group, realm, etc. See the log section of raddb/radiusd.conf.
* Added support for WiMAX Forum attributes. The dynamic keys are not yet calculated. See share/dictionary.wimax
* Added session resumption for PEAP and TTLS. See raddb/eap.conf, and the cache sub-section.
* Added radmin command-line tool for administering a running server. See man radmin and raddb/sites-available/control-socket.

Bug Fixes
* Double escaping of '\\' in the users (and some other) files has been fixed. If you have '\\' in the users file, your configuration will need to be checked, and fixed!
* Parse security section of radiusd.conf. This was accidentally deleted in 2.0.5. Closes bug #566.
* Bind to interface before IP, which allows DHCP sockets to listen on "*" for multiple interfaces.
* Fix handling of giaddr in DHCP responses.
* Corrected parsing of status_check in home_server so that it works.
* Fix hints so that "Puser" works again.
* Removed length restrictions on attribute names in the dictionaries.
* Update socket code to avoid C compiler optimizations.

25 September 2008 - Version 2.1.1 has been released.

The focus of this release is stability.

Feature Improvements
* Many more options and features are available via radmin. See man radmin and raddb/sites-available/control-socket.
* Many more commands available via the control socket. Connect via radmin, and type help for more information.
* Added dictionary.networkphysics and dictionary.lancom.
* Calculate WiMAX MIP keys, and added sample WiMAX SQL tables.

Bug Fixes
* Fixed bug that made radmin not work.
* Fixed Suse && Debian package scripts.
* Fixed issues with dynamic clients.
* Fixed configure checks for -lreadline
* rlm_sqlippool no longer needs to be linked to rlm_sql.
* Add statistics for detail file listeners. This closes bug #593.
* Fixed printing of some WiMAX attributes.
* Fixed double free on exit() in rlm_attr_filter.
* Fixed build issues on Solaris.
* Fixed fast session resumption for EAP-TLS.
2008-10-12 13:57:27 +00:00

178 lines
5.9 KiB
Makefile

# $NetBSD: Makefile,v 1.3 2008/10/12 13:57:27 adrianp Exp $
DISTNAME= freeradius-server-${RADVER}
PKGNAME= ${DISTNAME:S/-server//}
CATEGORIES= net
MASTER_SITES= ftp://ftp.freeradius.org/pub/freeradius/
EXTRACT_SUFX= .tar.bz2
MAINTAINER= adrianp@NetBSD.org
HOMEPAGE= http://www.freeradius.org/
COMMENT= Free RADIUS server implementation
CONFLICTS+= freeradius-1.[0-9]*
.include "../../mk/bsd.prefs.mk"
CONFLICTS+= radiusd-cistron-[0-9]*
USE_TOOLS+= gmake perl:run
GNU_CONFIGURE= YES
USE_LIBTOOL= YES
USE_OLD_DES_API= YES
BUILD_DEFS= VARBASE
PLIST_SRC= ${WRKDIR}/.PLIST_SRC
FILES_SUBST+= RADIUS_USER=${RADIUS_USER}
FILES_SUBST+= RADIUS_GROUP=${RADIUS_GROUP}
PLIST_SUBST+= RADVER=${RADVER}
MESSAGE_SRC+= ${WRKDIR}/.MESSAGE_SRC
MESSAGE_SUBST+= CHOWN=${CHOWN:Q} CHMOD=${CHMOD:Q} VARBASE=${VARBASE}
MESSAGE_SUBST+= RADIUS_USER=${RADIUS_USER} XARGS=${XARGS:Q}
MESSAGE_SUBST+= RADIUS_GROUP=${RADIUS_GROUP} FIND=${FIND:Q}
PKG_SYSCONFSUBDIR= raddb
RCD_SCRIPTS= radiusd
RADIUS_USER?= radius
RADIUS_GROUP?= radius
PKG_GROUPS= ${RADIUS_USER}
PKG_USERS= ${RADIUS_USER}:${RADIUS_GROUP}
PKG_GROUPS_VARS+= RADIUS_GROUP
PKG_USERS_VARS+= RADIUS_USER
OWN_DIRS_PERMS+= ${VARBASE}/run/radiusd \
${RADIUS_USER} ${RADIUS_GROUP} 0750
OWN_DIRS_PERMS+= ${VARBASE}/log/radiusd \
${RADIUS_USER} ${RADIUS_GROUP} 0750
OWN_DIRS_PERMS+= ${VARBASE}/log/radiusd/radacct \
${RADIUS_USER} ${RADIUS_GROUP} 0750
RADVER= 2.1.1
EGDIR= ${PREFIX}/share/examples/freeradius
BUILDLINK_API_DEPENDS.openssl+= openssl>=0.9.7
CONFIGURE_ARGS+= --with-logdir=${VARBASE}/log/radiusd
CONFIGURE_ARGS+= --localstatedir=${VARBASE}
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFBASEDIR}
CONFIGURE_ARGS+= --disable-ltdl-install
CONFIGURE_ARGS+= --with-ltdl-lib=${PREFIX}/lib
CONFIGURE_ARGS+= --with-ltdl-include=${PREFIX}/include
CONFIGURE_ARGS+= --without-rlm_ippool
CONFIGURE_ARGS+= --without-rlm_smb
CONFIGURE_ARGS+= --without-rlm_sql_iodbc
CONFIGURE_ARGS+= --without-rlm_sql_oracle
CONFIGURE_ARGS+= --without-rlm_sql_unixodbc
CONFIGURE_ARGS+= --quiet
#CONFIGURE_ARGS+= --without-rlm_eap_peap
#CONFIGURE_ARGS+= --without-rlm_eap_sim
#CONFIGURE_ARGS+= --without-rlm_eap_tls
#CONFIGURE_ARGS+= --without-rlm_eap_ttls
REPLACE_PERL= scripts/radsqlrelay
SUBST_CLASSES= make
SUBST_STAGE.make= post-patch
SUBST_FILES.make= src/modules/rlm_mschap/Makefile \
src/modules/rlm_sql/drivers/rlm_sql_postgresql/Makefile.in
SUBST_SED.make= -e "s|RLM_LDFLAGS =|RLM_LDFLAGS = \
-L../../../src/lib/.libs/ -lradius|g"
SUBST_SED.make+= -e "s|RLM_SQL_LIBS =|RLM_SQL_LIBS = \
-L${PREFIX}/lib|g"
SUBST_MESSAGE.make= Fixing Makefiles.
SUBST_CLASSES+= config
SUBST_STAGE.config= post-patch
SUBST_FILES.config= raddb/radiusd.conf.in
SUBST_SED.config= -e "s|@@RADIUS_USER@@|${RADIUS_USER}|g"
SUBST_SED.config+= -e "s|@@RADIUS_GROUP@@|${RADIUS_GROUP}|g"
SUBST_MESSAGE.config= Fixing configuration files.
.include "options.mk"
EGFILES= certs/demoCA/cacert.pem certs/bootstrap certs/xpextensions \
certs/client.cnf certs/server.cnf certs/README certs/ca.cnf \
sql/mssql/dialup.conf sql/mssql/schema.sql \
sql/mysql/dialup.conf sql/mysql/nas.sql sql/mysql/ippool.conf \
sql/mysql/schema.sql sql/mysql/counter.conf \
sql/mysql/ippool.sql sql/oracle/dialup.conf sql/oracle/nas.sql \
sql/oracle/schema.sql sql/oracle/ippool.sql \
sql/postgresql/dialup.conf sql/postgresql/nas.sql \
sql/postgresql/voip-postpaid.conf sql/postgresql/ippool.conf \
sql/postgresql/schema.sql sql/postgresql/ippool.sql \
sql/postgresql/cisco_h323_db_schema.sql \
sql/postgresql/counter.conf sql/postgresql/admin.sql \
sql/postgresql/update_radacct_group_trigger.sql policy.txt \
experimental.conf radiusd.conf otp.conf policy.conf \
preproxy_users users vmpsd.conf.in acct_users \
ldap.attrmap clients.conf huntgroups sql.conf sqlippool.conf \
sites-available/inner-tunnel sites-available/example \
sites-available/buffered-sql sites-available/default \
sites-available/vmps sites-available/README \
sites-available/proxy-inner-tunnel \
sites-available/copy-acct-to-home-server attrs.pre-proxy \
sites-available/dhcp sites-available/robust-proxy-accounting \
sites-available/virtual.example.com sql/mysql/admin.sql \
eap.conf attrs.accounting_response hints attrs.access_reject \
templates.conf attrs proxy.conf dictionary
EGDIRS= certs certs/demoCA sql sql/mssql sql/mysql sql/oracle \
sql/postgresql sites-available
.for f in ${EGFILES}
CONF_FILES_PERMS+= ${EGDIR}/${f} ${PKG_SYSCONFDIR}/${f} \
${RADIUS_USER} ${RADIUS_GROUP} 0640
.endfor
.include "../../security/openssl/buildlink3.mk"
.include "../../devel/libltdl/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "none"
CONFIGURE_ARGS+= --without-threads
.endif
.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "pth"
.include "../../devel/pthread-sem/buildlink3.mk"
SUBST_SED.make+= -e 's|@ldap_ldflags@|@ldap_ldflags@ \
${PTHREAD_LDFLAGS:M*:Q} ${PTHREAD_LIBS:M*:Q} -lsemaphore|g'
.endif
.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "native"
SUBST_SED.make+= -e 's|@ldap_ldflags@|@ldap_ldflags@ \
${PTHREAD_LDFLAGS:M*:Q} ${PTHREAD_LIBS:M*:Q}|g'
.endif
.if ${MACHINE_ARCH} == "amd64"
CFLAGS+= -fPIC
.endif
post-build:
${CP} ${PKGDIR}/PLIST ${WRKDIR}/.PLIST_SRC
${CP} ${PKGDIR:Q}/MESSAGE ${WRKDIR:Q}/.MESSAGE_SRC
. if !empty(PKG_OPTIONS:Mpam)
${CP} ${PKGDIR}/MESSAGE.pam ${WRKDIR}/.MESSAGE_SRC.pam
. endif
post-install:
${INSTALL_DATA_DIR} ${EGDIR}
. for d in ${EGDIRS}
${INSTALL_DATA_DIR} ${EGDIR}/${d}
. endfor
. for f in ${EGFILES}
${INSTALL_DATA} ${WRKSRC}/raddb/${f} ${EGDIR}/${f}
. endfor
${INSTALL_DATA} ${WRKSRC}/src/modules/rlm_perl/example.pl ${EGDIR}
. for d in ${EGDIRS}
${MKDIR} ${PKG_SYSCONFDIR}/${d}
. endfor
${CHOWN} ${RADIUS_USER}:${RADIUS_GROUP} ${PKG_SYSCONFDIR}/certs
${CHOWN} ${RADIUS_USER}:${RADIUS_GROUP} ${PKG_SYSCONFDIR}/certs/demoCA
${CHMOD} 0750 ${PKG_SYSCONFDIR}/certs
${CHMOD} 0750 ${PKG_SYSCONFDIR}/certs/demoCA
.include "../../mk/bsd.pkg.mk"