Date: Sun, 11 Sep 2005 22:30:22 GMT From: User Dnns <dnns@midgard.noneofyourbusiness.nl> To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/85974 : Update port: irc/ptlink-services to 3.4.1. Now it also will create user/group ircd without a special uid/gid. Also tested on 5.4-RELEASE Message-ID: <200509112230.j8BMUMxj030648@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/85974; it has been noted by GNATS. From: User Dnns <dnns@midgard.noneofyourbusiness.nl> To: bug-followup@FreeBSD.org Cc: Subject: Re: ports/85974 : Update port: irc/ptlink-services to 3.4.1. Now it also will create user/group ircd without a special uid/gid. Also tested on 5.4-RELEASE Date: Mon, 12 Sep 2005 00:27:40 +0200 (CEST) diff -Nru ptlink-services.orig/Makefile ptlink-services/Makefile --- ptlink-services.orig/Makefile Sun Sep 11 14:29:35 2005 +++ ptlink-services/Makefile Sun Sep 11 14:30:01 2005 @@ -2,19 +2,17 @@ # Date created: 22 October 2004 # Whom: Dennis Cabooter <dennis@rootxs.org> # -# $FreeBSD: ports/irc/ptlink-services/Makefile,v 1.4 2005/05/24 20:22:33 pav Exp $ +# $FreeBSD$ # PORTNAME= Services -PORTVERSION= 2.26.1 -PORTREVISION= 1 +PORTVERSION= 3.4.1 CATEGORIES= irc -MASTER_SITES= ftp://ftp.sunsite.dk/projects/ptlink/services2/ \ - http://www.rootxs.org/pub/FreeBSD/distfiles/ +MASTER_SITES= ftp://ftp.sunsite.dk/projects/ptlink/ircsvs3/ PKGNAMEPREFIX= PTlink- -DISTNAME= PTlink.${PORTNAME}2.26-eol.1 +DISTNAME= PTlinkIRC.${PORTNAME}${PORTVERSION} -PATCH_DIST_STRIP= -p1 +PATCH_DIST_STRIP= -p1 MAINTAINER= dennis@rootxs.org COMMENT= PTlink IRC services @@ -22,13 +20,26 @@ GNU_CONFIGURE= yes USE_GMAKE= yes USE_PERL5= yes +USE_MYSQL= yes + +USER= ircd +GROUP= ircd + +PKGINSTALL= ${WRKDIR}/pkg-install +SYSCONFDIR= ${PREFIX}/etc/ptlink-services +RCDIR= ${PREFIX}/etc/rc.d -SYSCONFDIR= ${PREFIX}/etc/ptlink CONFIGURE_ARGS= --sysconfdir=${SYSCONFDIR} post-install: - @${INSTALL_DATA} ${FILESDIR}/*.sample ${SYSCONFDIR} - @${INSTALL_DATA} ${FILESDIR}/create_tables.sql ${SYSCONFDIR} - @${SED} 's,%%SYSCONFDIR%%,${SYSCONFDIR},g' < ${PKGMESSAGE} + @${SED} -e 's,%%USER%%,${USER},g' -e 's,%%GROUP%%,${GROUP},g' \ + ${PKGDIR}/pkg-install > ${PKGINSTALL} || exit 1 + @${SED} -e 's,%%USER%%,${USER},g' ${FILESDIR}/ptlink-services.sh > \ + ${WRKDIR}/ptlink-services.sh || exit 1 + @${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL || exit 1 + @${CHOWN} -R ${USER}:${GROUP} ${SYSCONFDIR} || exit 1 + @${INSTALL_SCRIPT} ${WRKDIR}/ptlink-services.sh ${RCDIR} || exit 1 + @${SED} -e 's,%%SYSCONFDIR%%,${SYSCONFDIR},g' \ + -e 's,%%RCDIR%%,${RCDIR},g' < ${PKGMESSAGE} .include <bsd.port.mk> diff -Nru ptlink-services.orig/distinfo ptlink-services/distinfo --- ptlink-services.orig/distinfo Sun Sep 11 14:29:35 2005 +++ ptlink-services/distinfo Sun Sep 11 14:30:01 2005 @@ -1,2 +1,2 @@ -MD5 (PTlink.Services2.26-eol.1.tar.gz) = 21db7f28ca4e09053d7f1ab5689e9a27 -SIZE (PTlink.Services2.26-eol.1.tar.gz) = 568462 +MD5 (PTlinkIRC.Services3.4.1.tar.gz) = d976eb60881963eaded76f28efd624f0 +SIZE (PTlinkIRC.Services3.4.1.tar.gz) = 411223 diff -Nru ptlink-services.orig/files/create_tables.sql ptlink-services/files/create_tables.sql --- ptlink-services.orig/files/create_tables.sql Sun Sep 11 14:29:35 2005 +++ ptlink-services/files/create_tables.sql Thu Jan 1 01:00:00 1970 @@ -1,89 +0,0 @@ -DROP TABLE IF EXISTS nickserv; -CREATE TABLE nickserv ( - snid INT UNSIGNED NOT NULL auto_increment, - nick varchar(32) NOT NULL default '', - t_reg datetime NOT NULL, - t_ident datetime NOT NULL, - t_seen datetime NOT NULL, - t_sign datetime NOT NULL, - pass varchar(32) default NULL, - email varchar(64) default NULL, - url varchar(64) default NULL, - imid varchar(64) default NULL, - location varchar(64) default NULL, - ontime INT UNSIGNED NOT NULL default '0', - username varchar(32) NOT NULL default '0', - realhost varchar(64) default NULL, - info varchar(64) default NULL, - nmask INT UNSIGNED default NULL, - ajoin varchar(128) default NULL, - status int NOT NULL default '0', - flags int NOT NULL default '0', - securitycode varchar(32) default NULL, - lang int NOT NULL default '0', - master_snid INT UNSIGNED NOT NULL default '0', - PRIMARY KEY (snid), - UNIQUE KEY nick (nick) -) Type = InnoDB; - -DROP TABLE IF EXISTS memoserv; -CREATE TABLE memoserv( - smid INT UNSIGNED NOT NULL auto_increment, - owner_snid INT UNSIGNED NOT NULL, - sender_snid INT UNSIGNED NOT NULL, - sender_name varchar(32) NULL, # the sender_snid may drop - flags INT UNSIGNED NOT NULL, - t_send DATETIME NOT NULL, - message VARCHAR(255) NOT NULL, - PRIMARY KEY (smid), - KEY smid (smid) -) Type = InnoDB; - -# Table structure for table `chanserv` -DROP TABLE IF EXISTS chanserv; -CREATE TABLE chanserv ( - scid INT UNSIGNED NOT NULL auto_increment, - name varchar(64) NOT NULL default '', - url varchar(64) default NULL, - email varchar(64) default NULL, - founder INT UNSIGNED NOT NULL default '0', - successor INT UNSIGNED NOT NULL default '0', - last_topic text, - last_topic_setter varchar(32) default NULL, - t_ltopic datetime NOT NULL, - t_reg datetime NOT NULL, - t_last_use datetime NOT NULL, - mlock varchar(64) default NULL, - status int(2) NOT NULL default '0', - flags int(2) NOT NULL default '0', - entrymsg varchar(255) default NULL, - cdesc varchar(255) default NULL, - t_maxusers datetime NOT NULL, - maxusers int(5) NOT NULL default '0', - PRIMARY KEY (scid), - UNIQUE KEY name (name) -) Type = InnoDB; - -# This is just a temporary table to map access list levels -# to chan roles -DROP TABLE IF EXISTS cs_role_temp; -CREATE TABLE cs_role_temp ( - scid INT UNSIGNED NOT NULL, - snid INT UNSIGNED NOT NULL, - who INT UNSIGNED NOT NULL, - rtype INT NOT NULL -) Type = InnoDB; - -DROP TABLE IF EXISTS ircsvs_tables; -CREATE TABLE ircsvs_tables( - name varchar(32) NOT NULL, - version INT UNSIGNED NOT NULL, - inst_time datetime NOT NULL -) Type = InnoDB; - -# this tables are installed by services2 -INSERT INTO ircsvs_tables VALUES ("mysql", 1 , NOW()); -INSERT INTO ircsvs_tables VALUES ("nickserv", 1 , NOW()); -INSERT INTO ircsvs_tables VALUES ("chanserv", 1 , NOW()); -INSERT INTO ircsvs_tables VALUES ("memoserv", 1 , NOW()); - diff -Nru ptlink-services.orig/files/domain.def.sample ptlink-services/files/domain.def.sample --- ptlink-services.orig/files/domain.def.sample Sun Sep 11 14:29:35 2005 +++ ptlink-services/files/domain.def.sample Thu Jan 1 01:00:00 1970 @@ -1,17 +0,0 @@ -# Please read D -# The format for domain language definitions is: -# domain language_number -# language number must be one from /NickServ HELP SET Language -# Unresolved domains will use the default language -[Domain] -pt 2 -tr 3 -de 4 -at 4 -uk 1 -us 1 -com 1 -it 5 -nl 6 -br 7 - diff -Nru ptlink-services.orig/files/patch-configure ptlink-services/files/patch-configure --- ptlink-services.orig/files/patch-configure Thu Jan 1 01:00:00 1970 +++ ptlink-services/files/patch-configure Sun Sep 11 14:30:01 2005 @@ -0,0 +1,11 @@ +--- configure.orig Sun Sep 11 12:49:13 2005 ++++ configure Sun Sep 11 12:49:48 2005 +@@ -7562,7 +7562,7 @@ + " + # Web support: ${web_support} + echo "#define BINPATH \"${prefix}/bin\"" > include/path.h +-echo "#define ETCPATH \"${prefix}/etc\"" >> include/path.h ++echo "#define ETCPATH \"${prefix}/etc/ptlink-services\"" >> include/path.h + echo "#define DATAPATH \"${prefix}/data\"" >> include/path.h + echo "#define VARPATH \"${prefix}/var\"" >> include/path.h + echo "#define LOGPATH \"${prefix}/var/log\"" >> include/path.h diff -Nru ptlink-services.orig/files/patch-src::Makefile.in ptlink-services/files/patch-src::Makefile.in --- ptlink-services.orig/files/patch-src::Makefile.in Sun Sep 11 14:29:35 2005 +++ ptlink-services/files/patch-src::Makefile.in Thu Jan 1 01:00:00 1970 @@ -1,15 +0,0 @@ ---- src/Makefile.in.orig Wed Dec 8 20:23:25 2004 -+++ src/Makefile.in Sun May 22 16:12:40 2005 -@@ -138,12 +138,6 @@ - cd $(bindir) ; \ - $(LN) -s services listchans; \ - fi -- @if ! test -f $(sysconfdir)/services.conf; then \ -- $(INSTALL_DATA) ../data/example.conf $(sysconfdir)/services.conf; \ -- fi -- $(INSTALL_DATA) ../data/example.conf $(sysconfdir) -- $(INSTALL_DATA) ../data/domain.def $(sysconfdir) -- $(INSTALL_DATA) ../data/create_tables.sql $(sysconfdir) - @if test -f $(sysconfdir)/services.pid ; then \ - servicespid=`cat $(sysconfdir)/services.pid`; \ - if `kill -CHLD $$servicespid >/dev/null 2>&1`; then \ diff -Nru ptlink-services.orig/files/ptlink-services.sh ptlink-services/files/ptlink-services.sh --- ptlink-services.orig/files/ptlink-services.sh Thu Jan 1 01:00:00 1970 +++ ptlink-services/files/ptlink-services.sh Sun Sep 11 14:30:01 2005 @@ -0,0 +1,26 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: services +# REQUIRE: NETWORKING SERVERS +# BEFORE: DAEMON + + +# Add the following line(s) to /etc/rc.conf: +# services_enable (bool): Set to "NO" by default, set it to "YES" to enable services +# services_user (str): Default to "%%USER%%" + +services_enable=${services_enable-"NO"} +services_user=${services_user-"%%USER%%"} + +. /etc/rc.subr + +name="services" +rcvar=`set_rcvar` +pidfile="/usr/local/etc/ptlink-services/services.pid" +command="/usr/local/bin/ircsvs" + +load_rc_config "$name" +run_rc_command "$1" diff -Nru ptlink-services.orig/files/services.conf.sample ptlink-services/files/services.conf.sample --- ptlink-services.orig/files/services.conf.sample Sun Sep 11 14:29:35 2005 +++ ptlink-services/files/services.conf.sample Thu Jan 1 01:00:00 1970 @@ -1,853 +0,0 @@ -# Example configuration file for Services. After making the appropriate -# changes to this file, place it in the Services data directory (as -# specified in the "configure" script, default $HOME/services/data) -# under the name "services.conf". -# -# The format of this file is fairly simple: a line beginning with a # is a -# comment, and any other non-blank line is expected to be a directive and -# parameters, separated by spaces or tabs. For example: -# -# Directive Parameter-1 Parameter-2 ... -# -# Directives are case-insensitive. Note that some directives do not take -# any parameters; these are typically "on-off" directives, for which simply -# including the directive in this file (or removing it) has an effect on -# Services' functionality. -# -# If a parameter's value is a string which includes spaces, enclose the -# string in double quotation marks, like the example below. Quotes may be -# used around any string at all for clarity. -# -# "This is a parameter string with spaces in it" -# -# If you need to include a double quote inside a quoted string, precede it -# by a backslash: -# -# "This string has \"double quotes\" in it" -# -# Time parameters can be specified either as an integer representing a -# number of seconds (e.g. "3600" = 1 hour), or as an integer with a unit -# specifier: "s" = seconds, "m" = minutes, "h" = hours, "d" = days. -# Combinations (such as "1h30m") are not permitted. Examples (all of which -# represent the same length of time, one day): -# -# "86400", "86400s", "1440m", "24h", "1d" -# -# In the documentation for each directive, one of the following will be -# included to indicate whether an option is required: -# -# [REQUIRED] -# Indicates a directive which must be given. Without it, Services will -# not start. -# -# [RECOMMENDED] -# Indicates a directive which may be omitted, but omitting it may cause -# undesirable side effects. -# -# [OPTIONAL] -# Indicates a directive which is optional. If not given, the feature -# will typically be disabled. If this is not the case, more -# information will be given in the documentation. -# -# [DISCOURAGED] -# Indicates a directive which may cause undesirable side effects if -# specified. -# -# [DEPRECATED] -# Indicates a directive which will disappear in a future version of -# Services, usually because its functionality has been either -# superseded by that of other directives or incorporated into the main -# program. -# - -########################################################################### -# -# Remote server configuration -# -########################################################################### - -# RemoteServer <hostname> <port> <password> [REQUIRED] -# Specifies the remote server hostname and port. The hostname may -# either be a standard Internet hostname or dotted-quad numeric -# address; the port number must be an integer between 1 and 65535 -# inclusive. The password is a string which should be enclosed in -# double quotes if it contains any spaces (or just for clarity). -# -# The remote server and port may be overridden at runtime with the -# -remote command-line option. The password may not be set at runtime. - -RemoteServer 127.0.0.1 6667 "servpass" - -# LocalAddress <hostname> [port] [OPTIONAL] -# Specifies the local address to bind to before connecting to the -# remote server. This may be useful on multihomed hosts. The hostname -# and port number are specified the same way as with the RemoteServer -# directive. If this is not specified, Services will let the operating -# system choose the local address. If only a hostname is specified, -# Services will bind to that address but let the operating system -# choose the local port number. -# -# If you don't know what this means or don't need to use it, just leave -# the directive commented out. -# -# This directive may be overridden at runtime by the -local -# command-line option. - -#LocalAddress localhost.ptlink.net - -########################################################################### -# -# Services identification and pseudoclient names -# -########################################################################### - -# ServerName <name> [REQUIRED] -# Specifies the IRC server name which Services should use. May be -# overridden by the -name command-line option. - -ServerName "services.PTlink.net" - -# ServerDesc <text> [REQUIRED] -# Specifies the text which should appear as the server's information in -# /whois and similar queries. May be overridden by the -desc -# command-line option. - -ServerDesc "Services for PTlink IRC network" - -# ServiceUser <usermask> [REQUIRED] -# Specifies the user@host mask which should be used by the Services -# pseudoclients. May be overridden by the -user and -host command-line -# options. - -ServiceUser "Services@PTlink.net" - -######################## -# IRCd related settings -####################### - -# OperControl [RECOMMENDED] -# Restricts the use of /oper to operserv registered opers -# if a user not services oper/admin tries to become oper -# services will remove their +o status -# NOTE: This may "jam" olines on some situations with ircds -# not coded to handle this features. -# -# Comment it to disable - -OperControl - -# NickChange [RECOMMENDED] -# Selects nick protection between nick change to _nick- -# or the old KILL protection system. -# -# Comment it to select KILL protection mode -NickChange - -# GuestPrefix [Optional] -# If defined will be used for forcec nick changes to -# GuestPrefixNNN -GuestPrefix "PTlink" - -# ...Name <nick> <string> [REQUIRED except as noted below] -# Specify the nicknames (first parameter) and "real" names (second -# parameter) for the Services pseudoclients. - -NickServName "NickServ" "Nickname Service" -ChanServName "ChanServ" "Channel Service" -MemoServName "MemoServ" "Memo Service" -OperServName "OperServ" "Operator Service" -NewsServName "NewsServ" "News Service" -GlobalName "Global" "Global Noticer" - -########################################################################### -# -# Services data filenames -# -########################################################################### - -# NOTE: All filenames are relative to the Services data directory. - -# MOTDFile <filename> [REQUIRED] -# Specifies the name of the Message of the Day file. - -MOTDFile services.motd - -# ...DB <filename> [REQUIRED] -# Specifies the filenames for the various Services subsystems' databases. - -NickServDB nick.db -ChanServDB chan.db -OperServDB oper.db -AutokillDB akill.db -SQlineDB sqline.db -VlineDB vline.db -BotListDB bots.db -NewsDB news.db -NewsServDB newsserv.db -SXlineDB sxline.db -VlinkDB vlink.db - -# DayStatsFN <filename> [REQUIRED] -# Specifies the filename for chan/nick stats of the day -# temporary savings - -DayStatsFN stats.today - -# DomainLangFN <filename> [RECOMMENDED] -# Specifies the filename for Smart Language selections definitions -# (text file) Please read it and edit it if you had new languages - -DomainLangFN domain.def - -# BalanceHistoryFN <filename> [OPTIONAL] -# Will save nick/chans stats at end of day -# Comment it to disable - -BalanceHistoryFN history.log - -# EncryptMethod number [REQUIRED] -# Specifies the encryption method to use for chan/nick passwords, -# 1 - JP2 -# 2 - DES crypt() -# 3 - MD5 -# NOTE: -# On existing passwords the encryption method change will just -# take effect after IDENTIFY for that password. -# Commented will use plain text passwords - -EncryptMethod 3 - -########################################################################### -# -# Logs/Administration/Help Channels -# -########################################################################### - -# LogChan #Channel [RECOMMENDED] -# Services Log's will be dumped to #Channel -# Comment it to disable channel logging -# WARNING: Please be sure to restrict this Channel access for security sake -# NOTE: Do not include # on the channel name , to avoid -# confusion with comment symbol. - -LogChan "Services.log" - -# HelpChan #Channel [RECOMMENDED] -# Causes services to give umode +h (helper) on people, -# entering #Channel with should op access. -# Comment it to disable services setting +h -# NOTE: Do not include # on the channel name , to avoid -# confusion with comment symbol. - -HelpChan "Help" - -# AdminChan #Channel [RECOMMENDED] -# Causes services to make user join #Channel on /oper -# Comment it to disable autojoin on admin channel for opers. -# NOTE: Do not include # on the channel name , to avoid -# confusion with comment symbol. - -AdminChan "Admin" - -# AutoJoinChan #Channel [RECOMMENDED] -# Causes services to make all users join #Channel on connection. -# Comment it to disable. -# NOTE: Do not include # on the channel name , to avoid -# confusion with comment symbol. - -#AutoJoinChan "PTlink" - - -########################################################################### -# -# Basic functionality -# -########################################################################### - -# NSMaxNChange number [REQUIRED] -# Max number of allowed forced nick changes before a nick kill -# This is ideal for BOT's which don't identify on nick change -# (Only required if nick protection is nick change (DEFAULT) ) - -NSMaxNChange 5 - -# NoBackupOkay [DISCOURAGED] -# Allows Services to continue file write operations (i.e. database -# saving) even if the original file cannot be backed up. Enabling this -# option may allow Services to continue operation under some conditions -# when it might otherwise fail, such as a nearly-full disk. -# -# *** NOTE *** -# Enabling this option can cause irrecoverable data loss under some -# conditions, so make CERTAIN you know what you're doing when you -# enable it! - -#NoBackupOkay - -# NoSplitRecovery [OPTIONAL] -# Disables Services' recognition of users returning from netsplits. -# Normally (on networks with some sort of timestamp support in the IRC -# server), Services will check via the timestamp field whether a user -# is the same as the last user who identified for the nick, and allow -# the user access to that nick without requiring identification again -# if the timestamps match. Enabling this option will force all users -# to re-identify after a netsplit. -# -# Normally, it's easier on users to leave this disabled, but if you -# suspect one of your servers has been hacked to send false timestamps -# (or you suspect a bug in Services itself) enabling this directive -# will eliminate the possibility of one user "stealing" another's nick -# by pretending to have the same timestamp. -# -# You may also want to uncomment this directive if your servers' clocks -# are very far apart; the less synchronized the servers' clocks are, -# the greater the possibility of someone "taking over" another person's -# nick when a server with a fast clock splits (though the likelihood of -# success is relatively small in any case). - -#NoSplitRecovery - -# ListOpersOnly [DEPRECATED] -# When enabled, limits use of the ChanServ and NickServ LIST commands -# to IRC operators. -# -# This directive has been superseded by the NSListOpersOnly and -# CSListOpersOnly directives. - -#ListOpersOnly - -# StatsOpersOnly [OPTIONAL] -# When enabled, limits use of the ChanServ and NickServ STATS commands -# to Services operators. - -#StatsOpersOnly - -# StrictPasswords [RECOMMENDED] -# When enabled, causes Services to perform more stringent checks on -# passwords. If this is disabled, Services will only disallow a -# password if it is the same as the entity (nickname or channel name) -# with which it is associated. When enabled, however, Services will -# also check that the password is at least five characters long, and -# in the future will probably check other things as well. - -StrictPasswords - -# BadPassLimit <count> [RECOMMENDED] -# Sets the number of invalid password tries before Services removes a -# user from the network. If a user enters <count> invalid passwords -# for any Services function or combination of functions during a -# single IRC session (subect to BadPassTimeout, below), Services will -# issue a /KILL for the user. If not given, Services will ignore -# failed password attempts (though they will be logged in any case). - -BadPassLimit 5 - -# BadPassTimeout <time> [OPTIONAL] -# Sets the time after which invalid passwords are forgotten about. If -# a user does not enter any incorrect passwords in this amount of time, -# the incorrect password count will reset to zero. If not given, the -# timeout will be disabled, and the incorrect password count will never -# be reset until the user disconnects. - -BadPassTimeout 1h - -# UpdateTimeout <time> [REQUIRED] -# Sets the delay between automatic database updates. This timer is -# reset by the OperServ UPDATE command. - -UpdateTimeout 1h - -# ExpireTimeout <time> [REQUIRED] -# Sets the delay between checks for expired nicknames and channels. -# The OperServ UPDATE command will also cause a check for expiration -# and reset this timer. - -ExpireTimeout 1h - -# ReadTimeout <time> [REQUIRED] -# Sets the timeout period for reading from the network. - -ReadTimeout 10s - -# WarningTimeout <time> [REQUIRED] -# Sets the interval between sending warning messages for program -# errors via WALLOPS/GLOBOPS. - -WarningTimeout 4h - -# TimeoutCheck <time> [REQUIRED] -# Sets the (maximum) frequency at which the timeout list is checked. -# This, combined with ReadTimeout above, determine how accurately timed -# events, such as nick kills, occur; it also determines how much CPU -# time Services will use doing this. Higher values will cause less -# accurate timing but less CPU usage. -# -# This shouldn't be set any higher than 10 seconds, and 1 second is -# best if your system is powerful enough (or your network small enough) -# to handle it. 0 will cause the timeout list to be checked every time -# through the main loop, which will probably slow down Services too -# much to be useful on most networks. -# -# Note that this value is not an absolute limit on the period between -# checks of the timeout list; the period may be as great as ReadTimeout -# (above) during periods of inactivity. - -TimeoutCheck 5s - -########################################################################### -# -# NickServ configuration -# -########################################################################### - -# NSDef... [OPTIONAL] -# Sets the default options for newly registered nicks. Note that -# changing these options will have no effect on nicks which are already -# registered. -# -# If both NSDefKill and NSDefKillQuick are given, the latter takes -# precedence. KILL IMMED cannot be specified as a default. -# -# NOTE: If you do not enable any of these options, a default of -# Secure, MemoSignon, and MemoReceive will be used, for backward -# compatibility. If you really want no options enabled by default, use -# NSDefNone. - -#NSDefNone -#NSDefKill -#NSDefKillQuick -#NSDefPrivate -#NSDefHideEmail -#NSDefHideQuit -NSDefMemoSignon -NSDefMemoReceive - -# NSRegisterAdvice [RECOMMENDED] -# if defined a message with the nick register syntax is sent -# to any unregistered nick conneting to the network -NSRegisterAdvice - -# NSNeedEmail [RECOMMENDED] -# if defined then an email must be specified on nick registration -# Be sure to copy lang/*.auth and lang/*.setemail to -# the languages dir inside your data directory. -# Then EDIT the files without changing the fields ("%s") order. - -#NSNeedEmail - -# NSNeedAuth [RECOMMENDED] -# if defined nick registration will only be complete after email -# validation with the AUTH command. -#NSNeedAuth - -# NSRegDelay <time> [RECOMMENDED] -# Sets the minimum length of time between consecutive uses of the -# REGISTER command. If not given, this restriction is disabled (note -# that this allows "registration flooding"). - -NSRegDelay 1m - - -# NSExpire <time> [RECOMMENDED] -# Sets the length of time before a nick registration expires. - -NSExpire 30d - -# NSRegExpire <time> [RECOMMENDED] -# Sets the length of time before a nick registration expires, -# if the nick was never identified after registration -NSRegExpire 5d - -# NSDropDelay <time> [RECOMMENDED] -# Sets the length of time before a nick is dropped -# (after the DROP command for that nick as been issued, -# identifying the nick during this time will cancel the "drop") -# - -NSDropDelay 5d - -# NSAJoinMax <count> [REQUIRED] *** -# Sets the maximum number of entries allowed on a nickname Auto Join list. -# Should match your ircd's maximum channels per user -NSAJoinMax 10 - -# NSEnforcerUser <user>[@<host>] [REQUIRED] -# Sets the username (and possibly hostname) used for the fake user -# created when NickServ collides a user. Should be in user@host -# format. If the host is not given, the one from ServicesUser is -# used. - -NSEnforcerUser enforcer - -# NSReleaseTimeout <time> [REQUIRED] -# Sets the delay before a NickServ-collided nick is released. - -NSReleaseTimeout 1m - -# NSAllowKillImmed [OPTIONAL] -# When enabled, allows the use of the IMMED option with the NickServ -# SET KILL command. - -#NSAllowKillImmed - -# NSDisableLinkCommand [OPTIONAL] -# When enabled, makes the NickServ LINK command unavailable. Note that -# any links that have already been created will continue to function; -# this only prevents new links from being made. - -#NSDisableLinkCommand - -# NSListOpersOnly [OPTIONAL] -# When enabled, limits use of the NickServ LIST command to IRC -# operators. - -NSListOpersOnly - -# NSListMax <count> [REQUIRED] -# Specifies the maximum number of nicks to be returned for a NickServ -# LIST command. - -NSListMax 50 - -# NSMaxNotes <coun> [REQUIRED] -# Specifies the maximum number of notes a nick can keep. -# -NSMaxNotes 10 - -# NSSecureAdmins [RECOMMENDED] -# When enabled, prevents the use of the DROP, GETPASS, SENDPASS, and -# SET PASSWORD commands by Services admins on other Services admins. -# Note: Thisl will only protect Services root nicks if added to -# services admin list. - -NSSecureAdmins - -########################################################################### -# -# NewsServ configuration -# -########################################################################### - -# NWRecentDelay <time> [RECOMMENDED] -# Sets the minimum length of time between consecutive uses of the -# RECENT command. If not given, this restriction is disabled (note -# that this allows "newsserv flooding"). - -NWRecentDelay 1m - -# ExportRefresh <time> [RECOMMENDED] -# Sets the time interval between newsserv data export -# Comment it to disable newsserv data export - -ExportRefresh 1h - -# ExportFN <filename> [REQUIRED] (if ExportRefresh is enabled) -# Sets the newsserv data export file name - -ExportFN newsserv.txt - -########################################################################### -# -# ChanServ configuration -# -########################################################################### - -# CSMaxReg <count> [RECOMMENDED] -# Limits the number of channels which may be registered to a single -# nickname. - -CSMaxReg 20 - -# CSExpire <time> [RECOMMENDED] -# Sets the number of days before a channel expires. - -CSExpire 30d - -#CSRegExpire <time> [RECOMMENDED] -# Sets the length of time before a channel registration expires, -# if the channel was never used after registration. - -CSRegExpire 5d - -# CSDropDelay <time> [RECOMMENDED] -# Sets the length of time before a channel is dropped -# (after the DROP command for that channel as been issued -# identifying the channel during this time will cancel the "drop") - -CSDropDelay 5d - -# CSAccessMax <count> [REQUIRED] -# Sets the maximum number of entries on a channel's access list. -# Channel access lists may contain only registered nicknames; -# therefore, checking each entry on the list requires only a single -# scaler comparison instead of a wildcard match, and this limit may be -# safely set much higher than (for exmple) the nickname access list -# size limit without impacting performance significantly. - -CSAccessMax 512 - -# CSAutokickMax <count> [REQUIRED] -# Sets the maximum number of entries on a channel's autokick list. - -CSAutokickMax 32 - -# CSAutokickReason <text> [REQUIRED] -# Sets the default reason for an autokick if none is given. - -CSAutokickReason "You are not welcome here." - -# CSInhabit <time> [REQUIRED] -# Sets the length of time ChanServ stays in a channel after kicking a -# user from a channel s/he is not permitted to be in. This only occurs -# when the user is the only one in the channel. - -CSInhabit 15s - -# CSRestrictDelay <time> [DISCOURAGED] -# When enabled, causes ChanServ to ignore any RESTRICTED or NOJOIN -# channel setting for the given time after Services starts up. This -# gives users a time to identify to NickServ before being kicked out of -# restricted channels they would normally be allowed to join. This -# setting will also cause channel mode +o's from servers to be passed -# through for this initial period. -# -# This option is presently discouraged because it is not properly -# implemented; any users in channels when Services starts up get a -# "free ride", though they can of course be deopped/kicked manually. - -#CSRestrictDelay 30s - -# CSListOpersOnly [OPTIONAL] -# When enabled, limits use of the ChanServ LIST command to IRC -# operators. - -CSListOpersOnly - -# CSListMax <count> [REQUIRED] -# Specifies the maximum number of channels to be returned for a -# ChanServ LIST command. - -CSListMax 50 - -# CSLostAKick <time> [RECOMMENDED] -# Specifies the max interval of time an akick will be kept, -# without beeing trigered -# Setting it 0 will make akicks permanent. - -CSLostAKick 30d - -# CSAutoAjoin [RECOMMENDED] -# If enabled, during channel registration founder will get -# the channel added to it's ajoin list. - -CSAutoAjoin - -# CSRestrictReg [OPTIONAL] -# If enabled, channel registration is restricted to services operators. - -#CSRestrictReg - - -########################################################################### -# -# MemoServ configuration -# -########################################################################### - -# MSMaxMemos <count> [RECOMMENDED] -# Sets the maximum number of memos a user is allowed to keep by -# default. Normal users may set the limit anywhere between zero and -# this value; Services admins can change it to any value or disable it. -# If not given, the limit is disabled by default, and normal users can -# set any limit they want. - -MSMaxMemos 20 - -# MSSendDelay <time> [RECOMMENDED] -# Sets the delay between consecutive uses of the MemoServ SEND command. -# This can help prevent spam as well as denial-of-service attacks from -# sending large numbers of memos and filling up disk space (and -# memory). A 3-second wait means a maximum average of 150 bytes of -# memo per second per user under the current IRC protocol. - -MSSendDelay 10s - -# MSNotifyAll [OPTIONAL] -# Should we notify all appropriate users of a new memo? This applies -# in cases where a memo is sent to a nick which either is linked to -# another nick or has another nick linked to it. Enabling this option -# will cause MemoServ to check all users who are currently online to -# see whether any have nicks which are linked to the target of the -# memo, and if so, notify all of them. This can take a good deal of -# CPU time on larger networks, so you may want to disable it. - -MSNotifyAll - -# MSExpireWarn <time> [RECOMMENDED] -# Specifies the age of a memo to be notified as "expiring soon" - -MSExpireWarn 30d - -# MSExpireTime <time> [RECOMMENDED] -# Specifies the time the memos will be kept after beeing sent. -# If you comment it, memos will be kept until user deletes them. - -MSExpireTime 45d - -########################################################################### -# -# OperServ configuration -# -########################################################################### - -# ServicesRoot <nick>,nick2 [REQUIRED] -# Specifies the Services "super-user". The super-user, or "root" as in -# Unix terminology, is the only user who can add or delete Services -# admins. -# -# This is commented out by default; make sure you insert the correct -# nick before uncommenting it. - -#ServicesRoot Root - -# LogMaxUsers [OPTIONAL] -# Causes Services to write a message to the log every time a new user -# maximum is set. - -LogMaxUsers - -# AutokillExpiry <time> [REQUIRED] -# Sets the default expiry time for autokills. - -AutoKillExpiry 15d - -# OSNoAutoRecon [OPTIONAL] -# On netjoins +r will not give services oper privilege -# without reidentifying. - -# OSNoAutoRecon - -# WallOper [OPTIONAL] -# Causes Services to send a WALLOPS/GLOBOPS when a user becomes an IRC -# operator. Note that this can cause WALLOPS floods when Services -# first connects to the network. - -#WallOper - -# WallBadOS [OPTIONAL] -# Causes Services to send a WALLOPS/GLOBOPS if a non-IRC-operator tries -# to use OperServ. - -WallBadOS - -# WallOS... [OPTIONAL] -# Cause Services to send a WALLOPS/GLOBOPS on use of each of the -# OperServ commands listed. - -WallOSMode -WallOSClearmodes -WallOSKick -WallOSAkill - -# WallAkillExpire [OPTIONAL] -# Causes Services to send a WALLOPS/GLOBOPS whenever an autokill -# expires. - -WallAkillExpire - -# WallGetpass [OPTIONAL] -# Causes Services to send a WALLOPS/GLOBOPS on use of the NickServ or -# ChanServ GETPASS command. - -#WallGetpass - -# WallSetpass [OPTIONAL] -# Causes Services to send a WALLOPS/GLOBOPS whenever a Services admin -# sets a password for a nickname or channel s/he does not normally have -# privileges to set. - -#WallSetpass - -# DefSessionLimit [RECOMMENDED] -# Limits the total number of connections allowed for the same host -# If hostname matches a botlist entry this value will be ignored -# and the maximum number from the botlist entry will be used instead -# -# NOTE: Comenting this will disable session limiting -# and your network will be vulnerable to clone flooding. - -DefSessionLimit 3 - -######################################################## -# Mail Settings (for SENDPASS) -######################################################## - -# SendFrom <e-mail> [REQUIRED] -# -# This is the e-mail address from which all the e-mails are to be sent. It should -# really exist. - -SendFrom services@localhost.net - -# SendFrom <e-mail> [REQUIRED] -# -# This is the real name from which all the e-mails are to be sent. It should -# really exist. - -SendFromName "Localhost Services" - -# MailSignature <e-mail> [REQUIRED] -# -# This is the signature text message that will be attached to the -# SENDPASS mail. - -MailSignature "PTlink Services - Network Admin Services" - -# MailDelay <time> [RECOMMENDED] -# -# This controls the minimum amount of time an user must wait before sending -# another mail after it has sent one. It also controls the minimum time -# an user must wait before it can receive another mail. -# -# This feature prevents users from being mail bombed using Services and -# should definitely be used. - -MailDelay 5m - - -######## Miscelaneous Settings - -# TimeAdjust <timedif> -# Add timedif to every time field before it is displayed, -# this maybe usefull if you cannot setup the clock on the -# system services are running - -# TimeAdjust 1h - -# TimeZone "<zone> offset" -# Sets wich time zone should services uses. -# Only needed if you wish to run services in a diferent timezone -# than then local machine. - -# TimeZone "GMT 0" - -# DefLanguage <number> -# Default language for newly registered nicks (and nicks imported from -# old databases); -# LANG_EN_US 1 /* United States English */ -# LANG_PT 2 /* Portugese */ -# LANG_TR 3 /* Turkish */ -# LANG_DE 4 /* German */ -# LANG_IT 5 /* Italian */ -# LANG_NL 6 /* Dutch */ -# LANG_PT_BR 7 /* Brazil Portuguese */ -DefLanguage 1 - - -# MySQL configuration - -#MySQLDB "ptlink_services" -#MySQLHost "localhost" -#MySQLUser "some_user" -#MySQLPass "tryit" - diff -Nru ptlink-services.orig/pkg-install ptlink-services/pkg-install --- ptlink-services.orig/pkg-install Thu Jan 1 01:00:00 1970 +++ ptlink-services/pkg-install Sun Sep 11 14:30:01 2005 @@ -0,0 +1,20 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +if pw groupshow "%%GROUP%%" > /dev/null 2>&1; then + echo '===> Using existing group "%%GROUP%%"' +else + echo '===> Adding group "%%GROUP%%"' + pw groupadd %%GROUP%% || exit 1 +fi + +if pw usershow "%%USER%%" > /dev/null 2>&1; then + echo '===> Using existing user "%%USER%%"' +else + echo '===> Adding user "%%USER%%"' + pw useradd %%USER%% -g %%GROUP%% -h -\ + -s "/sbin/nologin" -d "/nonexistent" \ + -c "IRC Daemon User" || exit 1 +fi diff -Nru ptlink-services.orig/pkg-message ptlink-services/pkg-message --- ptlink-services.orig/pkg-message Sun Sep 11 14:29:35 2005 +++ ptlink-services/pkg-message Sun Sep 11 14:30:01 2005 @@ -2,10 +2,10 @@ PTlink IRC services is now installed. -Please copy the sample files %%SYSCONFDIR%%/*.conf.sample,*.def.sample -to %%SYSCONFDIR%%/*.conf,*.def. +Edit the configuration files in %%SYSCONFDIR%% to suit +your needs. -Edit the configuration files %%SYSCONFDIR%%/*.conf,*.def to suit your -needs. +Add services_enable="YES" to rc.conf and start ircd by running: +%%RCDIR%%/ptlink-services.sh start ====================================================================== diff -Nru ptlink-services.orig/pkg-plist ptlink-services/pkg-plist --- ptlink-services.orig/pkg-plist Sun Sep 11 14:29:35 2005 +++ ptlink-services/pkg-plist Sun Sep 11 14:30:01 2005 @@ -1,17 +1,112 @@ -bin/listchans -bin/listnicks -bin/services -data/languages/de -data/languages/en_us -data/languages/it -data/languages/nl -data/languages/pt -data/languages/pt_br -data/languages/tr -etc/ptlink/create_tables.sql -etc/ptlink/domain.def.sample -etc/ptlink/services.conf.sample -@unexec rmdir %D/etc/ptlink 2> /dev/null || true -@dirrm data/logs -@dirrm data/languages -@dirrm data +bin/ircsvs +bin/modules/chanserv.so +bin/modules/cs_akick.so +bin/modules/cs_clear.so +bin/modules/cs_drop.so +bin/modules/cs_help.so +bin/modules/cs_info.so +bin/modules/cs_invite.so +bin/modules/cs_kick.so +bin/modules/cs_lastreg.so +bin/modules/cs_list.so +bin/modules/cs_opdeop.so +bin/modules/cs_register.so +bin/modules/cs_role.so +bin/modules/cs_set.so +bin/modules/cs_show.so +bin/modules/cs_unban.so +bin/modules/cs_voicedevoice.so +bin/modules/memoserv.so +bin/modules/ms_cancel.so +bin/modules/ms_del.so +bin/modules/ms_help.so +bin/modules/ms_list.so +bin/modules/ms_read.so +bin/modules/ms_send.so +bin/modules/mysql.so +bin/modules/nickserv.so +bin/modules/ns_auth.so +bin/modules/ns_blist.so +bin/modules/ns_drop.so +bin/modules/ns_getpass.so +bin/modules/ns_group.so +bin/modules/ns_help.so +bin/modules/ns_identify.so +bin/modules/ns_info.so +bin/modules/ns_list.so +bin/modules/ns_login.so +bin/modules/ns_photo.so +bin/modules/ns_register.so +bin/modules/ns_set.so +bin/modules/operserv.so +bin/modules/os_global.so +bin/modules/os_help.so +bin/modules/os_hostrule.so +bin/modules/os_kick.so +bin/modules/os_mode.so +bin/modules/os_module.so +bin/modules/os_quote.so +bin/modules/os_raw.so +bin/modules/os_sendpass.so +bin/modules/os_shutdown.so +bin/modules/os_sline.so +bin/modules/os_stats.so +bin/modules/os_sysstats.so +bin/modules/template.so +bin/modules/userlog.so +etc/ptlink-services/chanserv.modules +etc/ptlink-services/ircsvs.modules +etc/ptlink-services/mails/setemail.de +etc/ptlink-services/mails/setemail.en_us +etc/ptlink-services/mails/setemail.nl +etc/ptlink-services/mails/setemail.pt +etc/ptlink-services/mails/setemail.pt_br +etc/ptlink-services/mails/welcome.de +etc/ptlink-services/mails/welcome.en_us +etc/ptlink-services/mails/welcome.nl +etc/ptlink-services/mails/welcome.pt +etc/ptlink-services/mails/welcome.pt_br +etc/ptlink-services/memoserv.modules +etc/ptlink-services/nickserv.modules +etc/ptlink-services/operserv.modules +etc/rc.d/ptlink-services.sh +utils/expire_email.sh +utils/news_email.sh +utils/sql/clear_db.sql +utils/sql/expire_emails.sql +utils/sql/news_emails.sql +utils/svsquery.sh +var/modules/sql/chanserv.2.sql +var/modules/sql/chanserv.3.sql +var/modules/sql/chanserv.sql +var/modules/sql/cs_akick.2.sql +var/modules/sql/cs_akick.sql +var/modules/sql/cs_role.2.sql +var/modules/sql/cs_role.3.sql +var/modules/sql/cs_role.sql +var/modules/sql/memoserv.2.sql +var/modules/sql/memoserv.3.sql +var/modules/sql/memoserv.sql +var/modules/sql/mysql.sql +var/modules/sql/nickserv.2.sql +var/modules/sql/nickserv.3.sql +var/modules/sql/nickserv.4.sql +var/modules/sql/nickserv.5.sql +var/modules/sql/nickserv.sql +var/modules/sql/ns_blist.sql +var/modules/sql/ns_group.2.sql +var/modules/sql/ns_group.sql +var/modules/sql/ns_photo.2.sql +var/modules/sql/ns_photo.sql +var/modules/sql/os_hostrule.sql +var/modules/sql/os_quote.sql +var/modules/sql/os_sline.2.sql +var/modules/sql/os_sline.sql +var/modules/sql/os_sysstats.sql +@dirrm var/modules/sql +@dirrm var/modules +@dirrm utils/sql +@dirrm utils +@dirrm etc/ptlink-services/mails +@dirrm bin/modules +@unexec rmdir %D/etc/ptlink-services 2> /dev/null || true
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200509112230.j8BMUMxj030648>