A new ircd port for irc.freebsd.org.
Submitted by: Ken Monville <desmo@bandwidth.org>
This commit is contained in:
parent
d02d58602d
commit
2059eed7bf
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=9340
22
irc/ircd-hybrid/Makefile
Normal file
22
irc/ircd-hybrid/Makefile
Normal file
@ -0,0 +1,22 @@
|
||||
# New port collection makefile for: ircd-hybrid
|
||||
# Version required: 5
|
||||
# Date created: 9 January 1998
|
||||
# Whom: desmo@bandwidth.org
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
DISTNAME= ircd-hybrid-5
|
||||
CATEGORIES= net
|
||||
MASTER_SITES= ftp://ftp.vol.com/pub/ircd/
|
||||
|
||||
MAINTAINER= desmo@bandwidth.org
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
IS_INTERACTIVE= yes
|
||||
|
||||
post-install:
|
||||
${INSTALL_MAN} ${WRKSRC}/doc/ircd.8 ${MANPREFIX}/man/man8
|
||||
/bin/sh ${PKGDIR}/INSTALL
|
||||
|
||||
.include <bsd.port.mk>
|
1
irc/ircd-hybrid/distinfo
Normal file
1
irc/ircd-hybrid/distinfo
Normal file
@ -0,0 +1 @@
|
||||
MD5 (ircd-hybrid-5.tar.gz) = cc7693cba92786931bf057a11182efb4
|
112
irc/ircd-hybrid/files/patch-aa
Normal file
112
irc/ircd-hybrid/files/patch-aa
Normal file
@ -0,0 +1,112 @@
|
||||
*** include/s_err.h.orig Sat Jan 10 14:45:50 1998
|
||||
--- include/s_err.h Sat Jan 10 14:45:34 1998
|
||||
***************
|
||||
*** 23,31 ****
|
||||
#ifdef CUSTOM_ERR
|
||||
static Numeric local_replies[] = {
|
||||
/* 000 */ 0, (char *)NULL,
|
||||
! /* 001 */ RPL_WELCOME, ":Welcome to EFNet IRC - the Internet Relay Chat Network %s",
|
||||
/* 002 */ RPL_YOURHOST, ":Your host is %s, running version %s",
|
||||
! /* 003 */ RPL_CREATED, ":This server rose from the ashes %s",
|
||||
/* 004 */ RPL_MYINFO, "%s %s oiwszcrkfydn biklmnopstv",
|
||||
0, (char *)NULL
|
||||
};
|
||||
--- 23,31 ----
|
||||
#ifdef CUSTOM_ERR
|
||||
static Numeric local_replies[] = {
|
||||
/* 000 */ 0, (char *)NULL,
|
||||
! /* 001 */ RPL_WELCOME, ":Welcome to BSDNet IRC - the Internet Relay Chat Network %s",
|
||||
/* 002 */ RPL_YOURHOST, ":Your host is %s, running version %s",
|
||||
! /* 003 */ RPL_CREATED, ":This server was hatched %s",
|
||||
/* 004 */ RPL_MYINFO, "%s %s oiwszcrkfydn biklmnopstv",
|
||||
0, (char *)NULL
|
||||
};
|
||||
***************
|
||||
*** 90,96 ****
|
||||
/* 461 */ ERR_NEEDMOREPARAMS, "%s :Not enough parameters",
|
||||
/* 462 */ ERR_ALREADYREGISTRED, ":You may not reregister",
|
||||
/* 463 */ ERR_NOPERMFORHOST, ":Your host isn't among the privileged.",
|
||||
! /* 464 */ ERR_PASSWDMISMATCH, ":BZZZT!! Wrong password, homez. Are you sure you know what you're doing??",
|
||||
/* 465 */ ERR_YOUREBANNEDCREEP, ":You are BANNED from this server- %s",
|
||||
/* 466 */ ERR_YOUWILLBEBANNED, (char *)NULL,
|
||||
/* 467 */ ERR_KEYSET, "%s :Channel key already set. Pay attention.",
|
||||
--- 90,96 ----
|
||||
/* 461 */ ERR_NEEDMOREPARAMS, "%s :Not enough parameters",
|
||||
/* 462 */ ERR_ALREADYREGISTRED, ":You may not reregister",
|
||||
/* 463 */ ERR_NOPERMFORHOST, ":Your host isn't among the privileged.",
|
||||
! /* 464 */ ERR_PASSWDMISMATCH, ":BZZZT!! Wrong password, dewd. Are you sure you know what you're doing?",
|
||||
/* 465 */ ERR_YOUREBANNEDCREEP, ":You are BANNED from this server- %s",
|
||||
/* 466 */ ERR_YOUWILLBEBANNED, (char *)NULL,
|
||||
/* 467 */ ERR_KEYSET, "%s :Channel key already set. Pay attention.",
|
||||
***************
|
||||
*** 104,112 ****
|
||||
0, (char *)NULL, 0, (char *)NULL, 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
/* 481 */ ERR_NOPRIVILEGES,
|
||||
! ":UHHH, I don't THINK so, homez... you ain't got what it takes. (IRC Operator)",
|
||||
/* 482 */ ERR_CHANOPRIVSNEEDED, "%s :You can't do that thing, when you don't have that swing (You're not channel operator)",
|
||||
! /* 483 */ ERR_CANTKILLSERVER, ":Don't be an idiot - you can't kill a SERVER, fool.",
|
||||
/* 484 */ 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
--- 104,112 ----
|
||||
0, (char *)NULL, 0, (char *)NULL, 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
/* 481 */ ERR_NOPRIVILEGES,
|
||||
! ":UHHH, I don't THINK so, dewd... you ain't got those mad l33+ sk1llz. (IRC Operator)",
|
||||
/* 482 */ ERR_CHANOPRIVSNEEDED, "%s :You can't do that thing, when you don't have that swing (You're not channel operator)",
|
||||
! /* 483 */ ERR_CANTKILLSERVER, ":Don't be an idiot - you can't kill a SERVER.",
|
||||
/* 484 */ 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
***************
|
||||
*** 124,130 ****
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
! /* 501 */ ERR_UMODEUNKNOWNFLAG, ":Unknown MODE flag - you smokin' something?",
|
||||
/* 502 */ ERR_USERSDONTMATCH, ":You can't change user modes for other users, silly - check that nickname again.",
|
||||
/* 503 */ ERR_GHOSTEDCLIENT, ":Message could not be delivered to %s",
|
||||
/* LAST */ ERR_LAST_ERR_MSG, ":Last Error Message",
|
||||
--- 124,130 ----
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
! /* 501 */ ERR_UMODEUNKNOWNFLAG, ":Unknown MODE flag",
|
||||
/* 502 */ ERR_USERSDONTMATCH, ":You can't change user modes for other users, silly - check that nickname again.",
|
||||
/* 503 */ ERR_GHOSTEDCLIENT, ":Message could not be delivered to %s",
|
||||
/* LAST */ ERR_LAST_ERR_MSG, ":Last Error Message",
|
||||
***************
|
||||
*** 143,149 ****
|
||||
0, (char *)NULL,
|
||||
/* 311 */ RPL_WHOISUSER, "%s %s %s * :%s",
|
||||
/* 312 */ RPL_WHOISSERVER, "%s %s :%s",
|
||||
! /* 313 */ RPL_WHOISOPERATOR, "%s :is an IRC Janitor (IRC Operator)",
|
||||
/* 314 */ RPL_WHOWASUSER, "%s %s %s * :%s",
|
||||
/* 315 */ RPL_ENDOFWHO, "%s :End of /WHO list.",
|
||||
/* 316 */ RPL_WHOISCHANOP, (char *)NULL,
|
||||
--- 143,149 ----
|
||||
0, (char *)NULL,
|
||||
/* 311 */ RPL_WHOISUSER, "%s %s %s * :%s",
|
||||
/* 312 */ RPL_WHOISSERVER, "%s %s :%s",
|
||||
! /* 313 */ RPL_WHOISOPERATOR, "%s :really likes to twist and shout -IRC Operator-",
|
||||
/* 314 */ RPL_WHOWASUSER, "%s %s %s * :%s",
|
||||
/* 315 */ RPL_ENDOFWHO, "%s :End of /WHO list.",
|
||||
/* 316 */ RPL_WHOISCHANOP, (char *)NULL,
|
||||
***************
|
||||
*** 220,226 ****
|
||||
#endif
|
||||
0, (char *)NULL, 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
! /* 381 */ RPL_YOUREOPER, ":You are now one bad motherfucker - Go /kill someone.",
|
||||
/* 382 */ RPL_REHASHING, "%s :it slices, dices, and even reloads config files! Rehashing config file, mang.",
|
||||
/* 383 */ 0, (char *)NULL,
|
||||
/* 384 */ RPL_MYPORTIS, "%d :Port to local server is\r\n",
|
||||
--- 220,226 ----
|
||||
#endif
|
||||
0, (char *)NULL, 0, (char *)NULL,
|
||||
0, (char *)NULL,
|
||||
! /* 381 */ RPL_YOUREOPER, ":You have the phorce. Use it wisely.",
|
||||
/* 382 */ RPL_REHASHING, "%s :it slices, dices, and even reloads config files! Rehashing config file, mang.",
|
||||
/* 383 */ 0, (char *)NULL,
|
||||
/* 384 */ RPL_MYPORTIS, "%d :Port to local server is\r\n",
|
171
irc/ircd-hybrid/files/patch-ab
Normal file
171
irc/ircd-hybrid/files/patch-ab
Normal file
@ -0,0 +1,171 @@
|
||||
*** include/config.h.orig Sat Jan 10 14:43:53 1998
|
||||
--- include/config.h Sat Jan 10 14:47:44 1998
|
||||
***************
|
||||
*** 27,34 ****
|
||||
/***************** MAKE SURE THIS IS CORRECT!!!!!!!!! **************/
|
||||
/* ONLY EDIT "HARD_FDLIMIT_" and "INIT_MAXCLIENTS" */
|
||||
|
||||
! #define HARD_FDLIMIT_ 1024
|
||||
! #define INIT_MAXCLIENTS 800
|
||||
|
||||
/*
|
||||
* This is how many 'buffer connections' we allow...
|
||||
--- 27,34 ----
|
||||
/***************** MAKE SURE THIS IS CORRECT!!!!!!!!! **************/
|
||||
/* ONLY EDIT "HARD_FDLIMIT_" and "INIT_MAXCLIENTS" */
|
||||
|
||||
! #define HARD_FDLIMIT_ 125
|
||||
! #define INIT_MAXCLIENTS 40
|
||||
|
||||
/*
|
||||
* This is how many 'buffer connections' we allow...
|
||||
***************
|
||||
*** 82,89 ****
|
||||
* -Dianora
|
||||
*/
|
||||
|
||||
! #define DPATH "/usr/local/ircd/"
|
||||
! #define SPATH "/usr/local/ircd/ircd"
|
||||
#define CPATH "ircd.conf"
|
||||
#define KPATH "kline.conf"
|
||||
#define MPATH "ircd.motd"
|
||||
--- 82,89 ----
|
||||
* -Dianora
|
||||
*/
|
||||
|
||||
! #define DPATH "/usr/local/etc/ircd/"
|
||||
! #define SPATH "/usr/local/sbin/ircd"
|
||||
#define CPATH "ircd.conf"
|
||||
#define KPATH "kline.conf"
|
||||
#define MPATH "ircd.motd"
|
||||
***************
|
||||
*** 130,137 ****
|
||||
*
|
||||
* These need to be defined if you want to use SYSLOG logging, too.
|
||||
*/
|
||||
! #define FNAME_USERLOG "/usr/local/ircd/users" /* */
|
||||
! #define FNAME_OPERLOG "/usr/local/ircd/opers" /* */
|
||||
|
||||
/* ANTI_IP_SPOOF - protects against TCP sequence guessing attacks
|
||||
* Define this if you want the server to send a random ping at USER or NICK
|
||||
--- 130,137 ----
|
||||
*
|
||||
* These need to be defined if you want to use SYSLOG logging, too.
|
||||
*/
|
||||
! #define FNAME_USERLOG "/usr/local/etc/ircd/users" /* */
|
||||
! #define FNAME_OPERLOG "/usr/local/etc/ircd/opers" /* */
|
||||
|
||||
/* ANTI_IP_SPOOF - protects against TCP sequence guessing attacks
|
||||
* Define this if you want the server to send a random ping at USER or NICK
|
||||
***************
|
||||
*** 169,175 ****
|
||||
* messages, define this. Otherwise leave it undef'd for plain ole
|
||||
* boring messages.
|
||||
*/
|
||||
! #undef CUSTOM_ERR
|
||||
|
||||
|
||||
/* FAILED_OPER_NOTICE - send a notice to all opers when someone
|
||||
--- 169,175 ----
|
||||
* messages, define this. Otherwise leave it undef'd for plain ole
|
||||
* boring messages.
|
||||
*/
|
||||
! #define CUSTOM_ERR
|
||||
|
||||
|
||||
/* FAILED_OPER_NOTICE - send a notice to all opers when someone
|
||||
***************
|
||||
*** 422,428 ****
|
||||
* mode "i" (i == invisible). Invisibility means people dont showup in
|
||||
* WHO or NAMES unless they are on the same channel as you.
|
||||
*/
|
||||
! #define NO_DEFAULT_INVISIBLE
|
||||
|
||||
/* TS_WARNINGS - warn opers about broken/poorly hacked servers
|
||||
* When defined, +s users are warned of some things that should never
|
||||
--- 422,428 ----
|
||||
* mode "i" (i == invisible). Invisibility means people dont showup in
|
||||
* WHO or NAMES unless they are on the same channel as you.
|
||||
*/
|
||||
! #undef NO_DEFAULT_INVISIBLE
|
||||
|
||||
/* TS_WARNINGS - warn opers about broken/poorly hacked servers
|
||||
* When defined, +s users are warned of some things that should never
|
||||
***************
|
||||
*** 431,437 ****
|
||||
* This is useful to track down anomalies; undefine it on a mixed TS/nonTS
|
||||
* net or you'll get a lot of warnings!
|
||||
*/
|
||||
! #define TS_WARNINGS
|
||||
|
||||
/* OPER_KILL OPER_REHASH OPER_RESTART OPER_DIE OPER_REMOTE -
|
||||
* restrict what local global-Opers can do
|
||||
--- 431,437 ----
|
||||
* This is useful to track down anomalies; undefine it on a mixed TS/nonTS
|
||||
* net or you'll get a lot of warnings!
|
||||
*/
|
||||
! #undef TS_WARNINGS
|
||||
|
||||
/* OPER_KILL OPER_REHASH OPER_RESTART OPER_DIE OPER_REMOTE -
|
||||
* restrict what local global-Opers can do
|
||||
***************
|
||||
*** 530,536 ****
|
||||
* security problem - they can use the "-f" option to read any files
|
||||
* that the 'new' access lets them.
|
||||
*/
|
||||
! #define CMDLINE_CONFIG
|
||||
|
||||
/* M4_PREPROC - run ircd.conf through m4 preprocessor
|
||||
* To use m4 as a preprocessor on the ircd.conf file, define M4_PREPROC.
|
||||
--- 530,536 ----
|
||||
* security problem - they can use the "-f" option to read any files
|
||||
* that the 'new' access lets them.
|
||||
*/
|
||||
! #undef CMDLINE_CONFIG
|
||||
|
||||
/* M4_PREPROC - run ircd.conf through m4 preprocessor
|
||||
* To use m4 as a preprocessor on the ircd.conf file, define M4_PREPROC.
|
||||
***************
|
||||
*** 557,567 ****
|
||||
* If you use syslog above, you may want to turn some (none) of the
|
||||
* spurious log messages for KILL,SQUIT,etc off.
|
||||
*/
|
||||
! #undef SYSLOG_KILL /* log all operator kills to syslog */
|
||||
! #undef SYSLOG_SQUIT /* log all remote squits for all servers to syslog */
|
||||
#undef SYSLOG_CONNECT /* log remote connect messages for other all servs */
|
||||
#undef SYSLOG_USERS /* send userlog stuff to syslog */
|
||||
! #undef SYSLOG_OPER /* log all users who successfully become an Op */
|
||||
|
||||
/* LOG_FACILITY - facility to use for syslog()
|
||||
* Define the facility you want to use for syslog(). Ask your
|
||||
--- 557,567 ----
|
||||
* If you use syslog above, you may want to turn some (none) of the
|
||||
* spurious log messages for KILL,SQUIT,etc off.
|
||||
*/
|
||||
! #define SYSLOG_KILL /* log all operator kills to syslog */
|
||||
! #define SYSLOG_SQUIT /* log all remote squits for all servers to syslog */
|
||||
#undef SYSLOG_CONNECT /* log remote connect messages for other all servs */
|
||||
#undef SYSLOG_USERS /* send userlog stuff to syslog */
|
||||
! #define SYSLOG_OPER /* log all users who successfully become an Op */
|
||||
|
||||
/* LOG_FACILITY - facility to use for syslog()
|
||||
* Define the facility you want to use for syslog(). Ask your
|
||||
***************
|
||||
*** 607,614 ****
|
||||
* define IRC_UID to that UID. This should only be defined if you are running
|
||||
* as root and even then perhaps not.
|
||||
*/
|
||||
! #define IRC_UID 1001
|
||||
! #define IRC_GID 31
|
||||
|
||||
/* CLIENT_FLOOD - client excess flood threshold
|
||||
* this controls the number of bytes the server will allow a client to
|
||||
--- 607,614 ----
|
||||
* define IRC_UID to that UID. This should only be defined if you are running
|
||||
* as root and even then perhaps not.
|
||||
*/
|
||||
! #define IRC_UID 72
|
||||
! #define IRC_GID 72
|
||||
|
||||
/* CLIENT_FLOOD - client excess flood threshold
|
||||
* this controls the number of bytes the server will allow a client to
|
19
irc/ircd-hybrid/files/patch-ac
Normal file
19
irc/ircd-hybrid/files/patch-ac
Normal file
@ -0,0 +1,19 @@
|
||||
*** include/struct.h.orig Sat Jan 10 17:27:35 1998
|
||||
--- include/struct.h Sat Jan 10 17:28:28 1998
|
||||
***************
|
||||
*** 86,92 ****
|
||||
*/
|
||||
#define USERLEN 10
|
||||
#define REALLEN 50
|
||||
! #define TOPICLEN 90
|
||||
#define CHANNELLEN 200
|
||||
#define PASSWDLEN 20
|
||||
#define KEYLEN 23
|
||||
--- 86,92 ----
|
||||
*/
|
||||
#define USERLEN 10
|
||||
#define REALLEN 50
|
||||
! #define TOPICLEN 250
|
||||
#define CHANNELLEN 200
|
||||
#define PASSWDLEN 20
|
||||
#define KEYLEN 23
|
1
irc/ircd-hybrid/pkg-comment
Normal file
1
irc/ircd-hybrid/pkg-comment
Normal file
@ -0,0 +1 @@
|
||||
An IRC Server.
|
6
irc/ircd-hybrid/pkg-descr
Normal file
6
irc/ircd-hybrid/pkg-descr
Normal file
@ -0,0 +1,6 @@
|
||||
Irc is a functional replacement for and improvement to talk(1). Talk
|
||||
is an old, primitive, atrocious, minimalist sort of keyboard/screen
|
||||
conversation tool, using a grotesque, machine-dependent protocol.
|
||||
Irc does everything talk does, but with a better protocol, allowing
|
||||
more than 2 users to talk at once, with access across the aggregate
|
||||
Internet, and providing a whole raft of other useful features.
|
79
irc/ircd-hybrid/pkg-install
Normal file
79
irc/ircd-hybrid/pkg-install
Normal file
@ -0,0 +1,79 @@
|
||||
#!/bin/sh
|
||||
|
||||
ask() {
|
||||
local question default answer
|
||||
|
||||
question=$1
|
||||
default=$2
|
||||
if [ -z "${PACKAGE_BUILDING}" ]; then
|
||||
read -p "${question} [${default}]? " answer
|
||||
fi
|
||||
if [ x${answer} = x ]; then
|
||||
answer=${default}
|
||||
fi
|
||||
echo ${answer}
|
||||
}
|
||||
|
||||
yesno() {
|
||||
local dflt question answer
|
||||
|
||||
question=$1
|
||||
dflt=$2
|
||||
while :; do
|
||||
answer=$(ask "${question}" "${dflt}")
|
||||
case "${answer}" in
|
||||
[Yy]*) return 0;;
|
||||
[Nn]*) return 1;;
|
||||
esac
|
||||
echo "Please answer yes or no."
|
||||
done
|
||||
}
|
||||
|
||||
if which -s pw ; then
|
||||
:
|
||||
else
|
||||
cat <<EOF
|
||||
|
||||
This system looks like a pre-2.2 version of FreeBSD. I see that it
|
||||
is missing the "pw" utility. I need this utility. Please get them
|
||||
and install them, and try again. You can get the sources from:
|
||||
|
||||
ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/pw.tar.gz
|
||||
|
||||
EOF
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
if grep -q "^ircd:" /etc/group; then
|
||||
echo "You already have a group \"ircd\", so I will use it."
|
||||
else
|
||||
echo "You need a group \"ircd\"."
|
||||
if which -s pw && yesno "Would you like me to create it" y; then
|
||||
pw groupadd ircd -g 72 || exit
|
||||
echo "Done."
|
||||
else
|
||||
echo "Please create it, and try again."
|
||||
if ! grep -q "^ircd:" /etc/passwd; then
|
||||
echo "While you're at it, please create a user \"${user}\" too,"
|
||||
echo "with a default group of \"${group}\"."
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -q "^ircd:" /etc/passwd; then
|
||||
echo "You already have a user \"ircd\", so I will use it."
|
||||
else
|
||||
echo "You need a user \"ircd\"."
|
||||
if which -s pw && yesno "Would you like me to create it" y; then
|
||||
pw useradd ircd -g ircd -u 72 -h - -d /nonexistent \
|
||||
-s /nonexistent -c "IRC Daemon" || exit
|
||||
echo "Done."
|
||||
else
|
||||
echo "Please create it, and try again."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
6
irc/ircd-hybrid/pkg-plist
Normal file
6
irc/ircd-hybrid/pkg-plist
Normal file
@ -0,0 +1,6 @@
|
||||
sbin/ircd
|
||||
man/man8/ircd.8
|
||||
etc/ircd/ircd.conf
|
||||
etc/ircd/ircd.motd
|
||||
etc/ircd/kline.conf
|
||||
etc/ircd/opers.txt
|
Loading…
Reference in New Issue
Block a user