remove derelict ICB chat client; ok OpenBSD developer community

This commit is contained in:
naddy 2016-03-18 23:25:20 +00:00
parent 42bc647e80
commit 99e296222a
40 changed files with 5 additions and 1149 deletions

View File

@ -1,11 +1,11 @@
# $OpenBSD: Makefile,v 1.364 2016/03/18 15:25:31 mmcc Exp $
# $OpenBSD: Makefile,v 1.365 2016/03/18 23:25:20 naddy Exp $
COMMENT = exceptions to pkg_add rules
CATEGORIES = devel databases
DISTFILES =
# API.rev
PKGNAME = quirks-2.209
PKGNAME = quirks-2.210
PKG_ARCH = *
MAINTAINER = Marc Espie <espie@openbsd.org>

View File

@ -1,7 +1,7 @@
#! /usr/bin/perl
# ex:ts=8 sw=4:
# $OpenBSD: Quirks.pm,v 1.374 2016/03/18 15:25:31 mmcc Exp $
# $OpenBSD: Quirks.pm,v 1.375 2016/03/18 23:25:20 naddy Exp $
#
# Copyright (c) 2009 Marc Espie <espie@openbsd.org>
#
@ -745,6 +745,7 @@ my $obsolete_reason = {
'libretto-config' => 6,
'courtney' => 2,
'junkbuster' => 2,
'icb' => 0,
};
my @msg = (

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.962 2016/03/18 14:46:36 mmcc Exp $
# $OpenBSD: Makefile,v 1.963 2016/03/18 23:25:20 naddy Exp $
SUBDIR =
SUBDIR += GeoIP
@ -133,7 +133,6 @@
SUBDIR += hs-multipart
SUBDIR += hs-network-info
SUBDIR += httptunnel
SUBDIR += icb
SUBDIR += icbd
SUBDIR += icbirc
SUBDIR += icecast

View File

@ -1,32 +0,0 @@
# $OpenBSD: Makefile,v 1.30 2013/03/11 11:35:47 espie Exp $
COMMENT= Internet CB - mostly-defunct chat client
DISTNAME= icb-5.0.9
REVISION= 5
CATEGORIES= net
MASTER_SITES= ftp://ftp.swcp.com/pub/icb/clients/unix/
EXTRACT_SUFX= .tar.Z
PERMIT_PACKAGE_CDROM= Yes
WANTLIB= c curses termcap
do-configure:
@sed -e s,@PREFIX@,${PREFIX},g \
-e s,@CC@,${CC},g ${FILESDIR}/config > ${WRKSRC}/config
NO_TEST= Yes
do-install:
${INSTALL_DATA_DIR} ${PREFIX}/lib/icb
${INSTALL_DATA_DIR} ${PREFIX}/share/examples/icb
${INSTALL_PROGRAM} ${WRKSRC}/icb/icb ${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/icbserverdb \
${PREFIX}/share/examples/icb/sample.icbserverdb
${INSTALL_DATA} ${WRKSRC}/sample.icbrc \
${PREFIX}/share/examples/icb
cd ${WRKSRC}/contrib; ${INSTALL_DATA} bartender confuse echofile \
${PREFIX}/lib/icb
.include <bsd.port.mk>

View File

@ -1,2 +0,0 @@
SHA256 (icb-5.0.9.tar.Z) = sxQ07VKreu1zFwD/kGpG9SaVAqem+UJmTp+gO8cLSJ8=
SIZE (icb-5.0.9.tar.Z) = 539837

View File

@ -1,55 +0,0 @@
#
# THIS IS AN AUTOMATICALLY GENERATED FILE
#
# If you edit this file and later run "setup", your
# changes will be lost. This file gets fed to "make",
# so keep that in mind if you make changes.
#
# Installing user's home directory
HOME = /none
# Directory where the client will be installed.
BINDIR = @PREFIX@/bin
# Directory where the manual page will be installed.
MANDIR = @PREFIX@/man
# Compiler to use.
CC = @CC@
# Compile options.
CFLAGS += ${DEBUG} -DSTRINGS_H -DTIME_H -DHAVE_UNISTD_H
TCLCFLAGS += ${DEBUG} -DSTRINGS_H -DTIME_H
# Lint flags
LFLAGS = -u -DSTRINGS_H -DTIME_H
# System dependent source file.
SYSDEP =sysdep.bsd
# Other libraries to include.
OTHERLIBS =-lcurses -ltermcap
# Resolver library
RESOLVLIB =
# Parallel makes. Set to & for Sequents.
PMAKE =
# Makefile dependency generator.
MAKEDEPEND = makedepend
# Makefile dependency generator.
DEPENDFLAGS = -fMake -DSTRINGS_H -DTIME_H
# Hostname and port of remote server.
DEFAULTHOST = 129.24.12.18
DEFAULTPORT = 7326
# Directory for support files
LIBDIR = @PREFIX@/lib/icb
# location of server database
SERVERLIST = @PREFIX@/lib/icbserverdb

View File

@ -1,20 +0,0 @@
$OpenBSD: patch-glob_tilde_c,v 1.2 2010/05/22 14:23:48 espie Exp $
--- glob/tilde.c.orig Fri Feb 24 22:20:46 1995
+++ glob/tilde.c Sat May 22 16:19:19 2010
@@ -28,6 +28,7 @@
#endif
#include <pwd.h>
+#include <stdlib.h>
#ifndef savestring
#define savestring(x) (char *)strcpy ((char *)xmalloc (1 + strlen (x)), (x))
@@ -41,7 +42,7 @@ typedef int Function ();
#if defined (TEST)
static char *xmalloc (), *xrealloc ();
#else
-extern char *malloc (), *xrealloc ();
+extern char *xrealloc ();
#endif /* TEST */
/* The default value of tilde_additional_prefixes. This is set to

View File

@ -1,14 +0,0 @@
$OpenBSD: patch-icb_bindings,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/bindings.orig Fri Feb 24 14:20:17 1995
+++ icb/bindings Mon May 14 10:33:06 2001
@@ -36,8 +36,8 @@ proc m {args} {
eval s_personal $args
}
-# paging is now the default (!)
-oset pagesize -1
+# do not page by default
+oset pagesize 0
c_usage add tcl g "tcl command" "pass command to tcl without quoting"
c_usage add oset g "\[variable\] \[value\]" "view or set an icb variable"

View File

@ -1,44 +0,0 @@
$OpenBSD: patch-icb_c_log_c,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/c_log.c.orig Fri Feb 24 14:20:18 1995
+++ icb/c_log.c Mon May 14 10:33:04 2001
@@ -6,6 +6,7 @@
#include "icb.h"
#include "externs.h"
#include <time.h>
+#include <errno.h>
FILE *logfp = NULL;
@@ -45,8 +46,10 @@ char *path;
time_t time();
struct tm *t, *localtime();
time_t clock;
+#if !(defined(BSD) && BSD >= 199306)
extern int errno, sys_nerr;
extern char *sys_errlist[];
+#endif
/* determine pathname to use */
if (path == NULL || *path == '\0')
@@ -97,8 +100,8 @@ char *path;
aptr++;
/* timestamp it */
- sprintf(mbuf, "Session log \"%s\" started at %d/%02d/%-2d %s.",
- path, t->tm_mon+1, t->tm_mday, t->tm_year, aptr);
+ sprintf(mbuf, "Session log \"%s\" started at %d/%02d/%-4d %s.",
+ path, t->tm_mon+1, t->tm_mday, 1900+t->tm_year, aptr);
putl(mbuf, PL_SCR | PL_LOG);
return(0);
@@ -126,8 +129,8 @@ closesessionlog()
aptr++;
/* timestamp it */
- sprintf(mbuf, "Session log closed at %d/%02d/%-2d %s.",
- t->tm_mon+1, t->tm_mday, t->tm_year, aptr);
+ sprintf(mbuf, "Session log closed at %d/%02d/%-4d %s.",
+ t->tm_mon+1, t->tm_mday, 1900+t->tm_year, aptr);
putl(mbuf, PL_SCR | PL_LOG);
/* close it */

View File

@ -1,21 +0,0 @@
$OpenBSD: patch-icb_c_shell_c,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/c_shell.c.orig Fri Feb 24 14:20:19 1995
+++ icb/c_shell.c Mon May 14 10:33:03 2001
@@ -14,7 +14,7 @@ TARGDEFS
static char *usage = "usage: c_shell [command]";
int w, pid;
int shellout = 0;
- union wait status;
+ int status;
char *shell, *getenv();
/* disallow use if restricted mode set */
@@ -66,7 +66,7 @@ TARGDEFS
icbterm();
/* restore signal processing */
- signal(SIGINT, askquit);
+ signal(SIGINT, (void *)askquit);
signal(SIGQUIT, SIG_DFL);
/* clean up a little */

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-icb_defprocs_c,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/defprocs.c.orig Fri Feb 24 14:20:20 1995
+++ icb/defprocs.c Mon May 14 10:33:06 2001
@@ -30,7 +30,7 @@ char *defprocs[] =
}\n\
eval s_personal $args\n\
}",
- "oset pagesize -1",
+ "oset pagesize 0",
"c_usage add tcl g \"tcl command\" \"pass command to tcl without quoting\"",
"c_usage add oset g \"\\[variable\\] \\[value\\]\" \"view or set an icb variable\"",
"c_usage add ounset g \"\\[variable\\]\" \"unset an icb variable\"",

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-icb_getline_c,v 1.1 2012/03/17 16:55:47 naddy Exp $
--- icb/getline.c.orig Sat Mar 17 10:48:27 2012
+++ icb/getline.c Sat Mar 17 10:49:20 2012
@@ -11,7 +11,7 @@ static char *line_read = (char *)NULL;
extern void echo();
-char *getline(prompt, expand)
+char *get_line(prompt, expand)
char *prompt;
int expand;
{

View File

@ -1,11 +0,0 @@
$OpenBSD: patch-icb_globals_c,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/globals.c.orig Fri Feb 24 14:20:22 1995
+++ icb/globals.c Mon May 14 10:33:05 2001
@@ -59,6 +59,7 @@ GLOBS gv = {
1, /* beeps */
"vi", /* editmode */
0, /* tabreply */
+ 0, /* printtime */
1, /* cute */
0, /* autodel */
"", /* personalto */

View File

@ -1,24 +0,0 @@
$OpenBSD: patch-icb_helpdata_c,v 1.3 2005/12/31 02:09:46 fgsch Exp $
--- icb/helpdata.c.orig Fri Feb 24 21:20:23 1995
+++ icb/helpdata.c Sat Dec 31 01:54:33 2005
@@ -573,7 +573,7 @@ char *ht_variables[] =
" into the logfile, if logging is active. The value of this variable may",
" be overridden for a single replay command by specifying -log or -nolog.",
"",
-"pagesize (integer) default: -1 (see below)",
+"pagesize (integer) default: 0 (see below)",
"",
" If this is nonzero, paging is in effect, and a more prompt will be",
" displayed every pagesize lines. Hitting a space continues, hitting any",
@@ -599,6 +599,11 @@ char *ht_variables[] =
" shell command is finished. Since a large amount of icb output may be",
" waiting for your screen, this gives you a chance to see the output",
" of your command.",
+"",
+"printtime (boolean) default: false",
+"",
+" Print the current time in front of every line sent to the display",
+" and log file.",
"",
"restricted (boolean) default: false",
"",

View File

@ -1,19 +0,0 @@
$OpenBSD: patch-icb_history_c,v 1.1 2010/05/22 14:23:48 espie Exp $
--- icb/history.c.orig Sat May 22 16:22:30 2010
+++ icb/history.c Sat May 22 16:22:40 2010
@@ -3,6 +3,7 @@
#include "icb.h"
#include "externs.h"
+#include <stdlib.h>
/* message history routines */
@@ -19,7 +20,6 @@ static STRLIST *hp = (STRLIST *) 0; /* user current lo
histput(nick)
char *nick;
{
- char *malloc();
STRLIST *sp;
/* hunt for user within list */

View File

@ -1,21 +0,0 @@
$OpenBSD: patch-icb_icb_h,v 1.2 2010/05/22 14:23:48 espie Exp $
--- icb/icb.h.orig Fri Feb 24 22:20:23 1995
+++ icb/icb.h Sat May 22 16:20:32 2010
@@ -9,8 +9,7 @@
#include <ctype.h>
#endif
-char *malloc();
-
+#include <stdlib.h>
/* command usage information */
typedef struct Usage {
@@ -38,6 +37,7 @@ typedef struct {
int beeps; /* whether beeps are audible */
char *editmode; /* input editing mode */
int tabreply; /* should replies go into the tab history? */
+ int printtime; /* print timestamp in front of every msg? */
int cute; /* cute messages when a blank line is entered */
int autodel; /* automatically delete nicks from the tab
history that produce a "not logged on" error */

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-icb_ipcf_c,v 1.1 2012/03/17 16:55:47 naddy Exp $
--- icb/ipcf.c.orig Sat Mar 17 10:48:41 2012
+++ icb/ipcf.c Sat Mar 17 10:49:17 2012
@@ -60,7 +60,7 @@ c_userchar()
static char *s; /* user input string */
/* user typed one or more characters - gather a line of input */
- s=getline(NULL, 1);
+ s=get_line(NULL, 1);
if (!s) /* EOF */
{

View File

@ -1,28 +0,0 @@
$OpenBSD: patch-icb_oset_c,v 1.2 2010/05/22 14:23:48 espie Exp $
--- icb/oset.c.orig Fri Feb 24 22:20:24 1995
+++ icb/oset.c Sat May 22 16:21:47 2010
@@ -5,6 +5,7 @@
#include "icb.h"
#include "externs.h"
+#include <stdlib.h>
/* struct for variable table */
typedef struct Variable {
@@ -39,6 +40,7 @@ VARIABLE vars[] = {
{ "pagesize", V_INT, (char *)&gv.pagesize },
{ "pauseonshell", V_BOOLEAN, (char *)&gv.pauseonshell },
{ "personalto", V_STRING, (char *)&gv.personalto },
+ { "printtime", V_BOOLEAN, (char *)&gv.printtime },
{ "restricted", V_BOOLEAN, (char *)&gv.restricted },
{ "tabreply", V_BOOLEAN, (char *)&gv.tabreply },
{ "timedisplay", V_STRING, (char *)&gv.timedisplay },
@@ -140,7 +142,7 @@ char *s;
{
int zero = 0, one = 1;
int tmp;
- char *p, *malloc();
+ char *p;
switch(type) {
case V_CHAR:

View File

@ -1,43 +0,0 @@
$OpenBSD: patch-icb_print_c,v 1.1 2001/05/14 16:42:53 millert Exp $
--- icb/print.c.orig Fri Feb 24 14:20:25 1995
+++ icb/print.c Mon May 14 10:33:06 2001
@@ -5,6 +5,7 @@
#include "icb.h"
#include "externs.h"
+#include <time.h>
extern FILE *logfp;
@@ -17,12 +18,22 @@ int flags;
char printbuf[1024];
char *p = printbuf;
char *t = s;
+ struct tm *tm, *localtime();
+ char timestamp[9];
if (continued) {
linenumber = 0;
continued = 0;
}
+ /* If requested, prepare timestamp */
+ if (gv.printtime) {
+ gettime();
+ tm = localtime(&curtime);
+ snprintf(timestamp, sizeof(timestamp), "[%02d:%02d] ",
+ tm->tm_hour, tm->tm_min);
+ }
+
if (flags & PL_SCR) {
/* if paging in effect, do paging */
if (gv.pagesize && (++linenumber >= gv.pagesize)) {
@@ -35,6 +46,8 @@ int flags;
*p++ = *t++;
*p++ = '\r';
*p++ = '\n';
+ if (gv.printtime)
+ write(1, timestamp, 8);
write(1, printbuf, p - printbuf);
}

View File

@ -1,21 +0,0 @@
$OpenBSD: patch-icb_protos_h,v 1.2 2012/03/17 16:55:47 naddy Exp $
--- icb/protos.h.orig Fri Feb 24 14:20:25 1995
+++ icb/protos.h Sat Mar 17 10:49:38 2012
@@ -49,7 +49,7 @@ int filtertext(char *s);
int fnexit(void);
int fnterm(void);
int oset(char *clientData, Tcl_Interp *interp, int argc, char *argv[]);
-char *getline(char *prompt, int expand);
+char *get_line(char *prompt, int expand);
int getterm(void);
int getwinsize(void);
int gunlink(USAGE *u, USAGE **first, USAGE **last);
@@ -64,7 +64,7 @@ int importantmsg(char *pkt);
int inserttab(void);
int ishushed(char *nick);
int lcaseit(char *s);
-#ifdef linux
+#if defined(linux) || (defined(BSD) && BSD >= 199306)
int linebuffer(FILE *fp);
#else
int linebuffer(struct _iobuf *fp);

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-icb_s_person_c,v 1.1 2012/03/17 16:55:47 naddy Exp $
--- icb/s_person.c.orig Sat Mar 17 10:48:56 2012
+++ icb/s_person.c Sat Mar 17 10:49:13 2012
@@ -106,7 +106,7 @@ int echoflag;
{
do
{
- text = getline(">> ",0);
+ text = get_line(">> ",0);
if (!text || (!*text && !last_command_was_kill))
{

View File

@ -1,42 +0,0 @@
$OpenBSD: patch-icb_serverlist_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- icb/serverlist.c.orig Fri Feb 24 14:20:29 1995
+++ icb/serverlist.c Mon May 14 10:33:04 2001
@@ -1,4 +1,5 @@
#include <stdio.h>
+#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include "icb.h"
@@ -16,7 +17,8 @@ FILE *openserverfile()
struct stat statbuf;
char *personalsl;
char command[256];
- char pwd[256];
+ char pwd[MAXPATHLEN];
+ char *home;
FILE *ret;
#ifdef sgi
@@ -25,15 +27,19 @@ FILE *openserverfile()
#ifndef SYSV
getwd(pwd);
#else /* SYSV */
- getcwd(pwd, MAXPATHLEN+1);
+ getcwd(pwd, MAXPATHLEN);
#endif /* SYSV */
#ifdef sgi
#define SYSV
#endif
- chdir(getenv("HOME"));
+ home = getenv("HOME");
+ if (!home)
+ errx(1, "can't get home directory from env");
+ chdir(home);
if (!stat(PERSONALSL,&statbuf))
{
- sprintf(command,"/bin/cat %s %s\n", PERSONALSL, SERVERLIST);
+ snprintf(command, sizeof command, "/bin/cat %s %s\n",
+ PERSONALSL, SERVERLIST);
ret= popen(command,"r");
}
else

View File

@ -1,40 +0,0 @@
$OpenBSD: patch-icb_signals_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- icb/signals.c.orig Fri Feb 24 14:20:29 1995
+++ icb/signals.c Mon May 14 10:33:04 2001
@@ -22,14 +22,14 @@ trapsignals()
/* sighandler askquit(), suspend(), icbexit(); */
/* exit on a hangup or terminate signal */
- signal(SIGHUP, icbexit);
- signal(SIGTERM, icbexit);
+ signal(SIGHUP, (void *)icbexit);
+ signal(SIGTERM, (void *)icbexit);
/* on an interrupt, verify the user wants to quit */
- signal(SIGINT, askquit);
+ signal(SIGINT, (void *)askquit);
/* suspend on a stop signal */
- signal(SIGTSTP, suspend);
+ signal(SIGTSTP, (void *)suspend);
}
@@ -45,7 +45,7 @@ suspend()
sigsetmask(sigblock(0) &~ mask(SIGTSTP));
kill(0, SIGTSTP);
sigblock(mask(SIGTSTP));
- signal(SIGTSTP, suspend);
+ signal(SIGTSTP, (void *)suspend);
icbterm();
continued = 1;
}
@@ -73,7 +73,7 @@ askquit()
if (c == 'Y' || c == 'y')
icbexit();
- signal(SIGINT, askquit);
+ signal(SIGINT, (void *)askquit);
continued = 1;
if (oem)

View File

@ -1,19 +0,0 @@
$OpenBSD: patch-icb_strings_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- icb/strings.c.orig Fri Feb 24 14:20:30 1995
+++ icb/strings.c Mon May 14 10:33:03 2001
@@ -333,6 +333,7 @@ char *s;
/* cat multiple strings into one */
/* call with strscat(dest, src, src, ...) */
+#if 0
char *
strscat(va_alist)
va_dcl
@@ -357,6 +358,7 @@ va_dcl
*dest = '\0';
return(dest);
}
+#endif
char *basename(path)
char *path;

View File

@ -1,43 +0,0 @@
$OpenBSD: patch-icb_tcl_c,v 1.2 2014/11/19 20:48:00 sthen Exp $
--- icb/tcl.c.orig Fri Feb 24 21:20:30 1995
+++ icb/tcl.c Wed Nov 19 20:36:43 2014
@@ -3,14 +3,11 @@
/* TCL interface */
-#ifdef linux
-#include <unistd.h>
-#endif
-
#include "icb.h"
#include "externs.h"
#include <sys/dir.h>
#include <sys/file.h>
+#include <unistd.h>
Tcl_Interp *interp;
@@ -145,7 +142,7 @@ getrcname()
if ((homedir = getenv("HOME")) == NULL) {
printf("icb: warning - $HOME not set.\r\n");
- return(0);
+ return(NULL);
}
for (p=names; p && *p; ++p)
@@ -153,12 +150,9 @@ getrcname()
sprintf(rcpath, "%s/%s", homedir, *p);
rcfile = rcpath;
if (access(rcfile, R_OK)==0)
- break;
+ return rcfile;
}
- if (p)
- return rcfile;
-
- return(0);
+ return(NULL);
}
tclrestrict()

View File

@ -1,201 +0,0 @@
$OpenBSD: patch-icb_unix_c,v 1.2 2005/12/31 02:09:46 fgsch Exp $
--- icb/unix.c.orig Fri Feb 24 21:20:31 1995
+++ icb/unix.c Sat Dec 31 01:54:33 2005
@@ -9,12 +9,36 @@
#include "externs.h"
#include <pwd.h>
#include <sys/dir.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
#undef stty
#undef gtty
-#ifndef SYSV
+#ifdef SYSV
+#define USE_TERMIO
+#include <termio.h>
+#define TTYSTRUCT termio
+#define stty(fd,buf) ioctl((fd),TCSETA,(buf))
+#define gtty(fd,buf) ioctl((fd),TCGETA,(buf))
+
+#else /* SYSV */
+
+# ifdef BSD4_4
+# define USE_TERMIO
+# include <termios.h>
+# define TTYSTRUCT termios
+# define stty(fd,buf) ioctl((fd),TIOCSETA,(buf))
+# define gtty(fd,buf) ioctl((fd),TIOCGETA,(buf))
+
+# endif /* BSD4_4 */
+
+#endif /* SYSV */
+
+#ifndef USE_TERMIO /* neither case above (SYSV or BSD4_4) */
+
#ifdef linux
#include <bsd/sgtty.h>
#else
@@ -22,18 +46,15 @@
#endif
#define TTYSTRUCT sgttyb
-#define stty(fd,buf) ioctl((fd),TIOCSETN,(buf))
+#define stty(fd,buf) ioctl((fd),TIOCSETP,(buf))
#define gtty(fd,buf) ioctl((fd),TIOCGETP,(buf))
-#else /* SYSV */
-#include <termio.h>
-#define TTYSTRUCT termio
-#define stty(fd,buf) ioctl((fd),TCSETA,(buf))
-#define gtty(fd,buf) ioctl((fd),TCGETA,(buf))
-#endif /* SYSV */
+#endif
char *getlogin();
struct TTYSTRUCT origtty; /* holds the user's original term settings */
+struct stat origtty_stats; /* holds termainal stats */
+char *mytty = NULL; /* holds terminal name */
int badttyinfo = 0; /* used when running under some weird modes */
@@ -79,13 +100,13 @@ FILE *fp;
pushback(c)
char c;
{
-#ifndef SYSV
+#ifndef USE_TERMIO
if (ioctl(0, TIOCSTI, &c) < 0)
perror("TIOCSTI ioctl failed");
-#else /* SYSV */
+#else /* USE_TERMIO */
if (ungetc(c,stdin) == EOF)
perror("ungetc() failed");
-#endif /* SYSV */
+#endif /* USE_TERMIO */
}
@@ -94,25 +115,30 @@ char c;
getterm()
{
-#ifndef SYSV
+ /* get terminal stats */
+ if ((mytty = ttyname(STDERR_FILENO))) {
+ if (stat(mytty, &origtty_stats)) mytty = NULL;
+ }
+
+#ifndef USE_TERMIO
struct ltchars lt;
-#endif /* SYSV */
+#endif /* USE_TERMIO */
/* get tty settings */
if (gtty(0,&origtty) < 0) {
badttyinfo++;
ttyinfo.erase = '\b'; /* ^H */
ttyinfo.kill = '\025'; /* ^U */
} else {
-#ifndef SYSV
+#ifndef USE_TERMIO
ttyinfo.erase = origtty.sg_erase;
ttyinfo.kill = origtty.sg_kill;
-#else /* SYSV */
+#else /* USE_TERMIO */
ttyinfo.erase = origtty.c_cc[VERASE];
ttyinfo.kill = origtty.c_cc[VKILL];
-#endif /* SYSV */
+#endif /* USE_TERMIO */
}
-#ifndef SYSV
+#ifndef USE_TERMIO
/* get local special chars */
if (ioctl(0, TIOCGLTC, &lt) < 0) {
ttyinfo.redraw = '\022'; /* ^R */
@@ -121,10 +147,10 @@ getterm()
ttyinfo.redraw = lt.t_rprntc;
ttyinfo.werase = lt.t_werasc;
}
-#else /* SYSV */
+#else /* USE_TERMIO */
ttyinfo.redraw = '\022'; /* ^R */
ttyinfo.werase = '\027'; /* ^W */
-#endif /* SYSV */
+#endif /* USE_TERMIO */
/* get the current window size */
getwinsize();
@@ -138,21 +164,24 @@ icbterm()
{
struct TTYSTRUCT tty;
+ /* disable biff/mesg */
+ if (mytty)
+ chmod(mytty, origtty_stats.st_mode & ~(S_IXUSR | S_IWGRP));
+
if (badttyinfo)
return;
-
bcopy((char *)&origtty, (char *)&tty, (unsigned)sizeof(struct TTYSTRUCT));
/* turn on cbreak - turn off echo */
-#ifndef SYSV
+#ifndef USE_TERMIO
tty.sg_flags |= CBREAK;
tty.sg_flags &= ~ECHO;
-#else /* SYSV */
+#else /* USE_TERMIO */
tty.c_lflag &= ~ICANON;
tty.c_cc[VEOF] = 1;
tty.c_lflag &= ~ECHO;
-#endif /* SYSV */
+#endif /* USE_TERMIO */
echomode = 0;
/* set the new flags */
@@ -167,6 +196,10 @@ icbterm()
restoreterm()
{
+ /* restore terminal stats */
+ if (mytty)
+ chmod(mytty, origtty_stats.st_mode);
+
if (badttyinfo)
return;
@@ -258,11 +291,11 @@ echo()
}
/* turn on echo */
-#ifndef SYSV
+#ifndef USE_TERMIO
tty.sg_flags |= ECHO;
-#else /* SYSV */
+#else /* USE_TERMIO */
tty.c_lflag |= ECHO;
-#endif /* SYSV */
+#endif /* USE_TERMIO */
echomode = 1;
@@ -287,11 +320,11 @@ noecho()
}
/* turn off echo */
-#ifndef SYSV
+#ifndef USE_TERMIO
tty.sg_flags &= ~ECHO;
-#else /* SYSV */
+#else /* USE_TERMIO */
tty.c_lflag &= ~ECHO;
-#endif /* SYSV */
+#endif /* USE_TERMIO */
echomode = 0;

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-murgil_clientserve_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- murgil/clientserve.c.orig Fri Feb 24 14:19:39 1995
+++ murgil/clientserve.c Mon May 14 10:33:02 2001
@@ -41,7 +41,7 @@ clientserve()
/* look at tty fd */
FD_SET(0,&fdset); /**/
- signal(SIGALRM, gotalarm);
+ signal(SIGALRM, (void *)gotalarm);
timeisup = 0;
for (;;) {

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-murgil_getrname_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- murgil/getrname.c.orig Fri Feb 24 14:19:41 1995
+++ murgil/getrname.c Mon May 14 10:33:02 2001
@@ -14,7 +14,7 @@ int s; /* connected socket fd */
{
static char rname[24];
struct hostent *host;
-#if defined(linux)
+#if defined(linux) || defined(__OpenBSD__)
#define PEER_CAST (struct sockaddr *)
#define HOST_CAST (char *)
#else

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-murgil_serverserve_c,v 1.1 2001/05/14 16:42:54 millert Exp $
--- murgil/serverserve.c.orig Fri Feb 24 14:19:44 1995
+++ murgil/serverserve.c Mon May 14 10:33:02 2001
@@ -33,7 +33,7 @@ serverserve()
if (port_fd > highestfd)
highestfd = port_fd;
- signal(SIGALRM, gotalarm);
+ signal(SIGALRM, (void *)gotalarm);
timeisup = 0;
for (;;) {

View File

@ -1,13 +0,0 @@
$OpenBSD: patch-readline_Make,v 1.2 2001/05/14 16:42:54 millert Exp $
--- readline/Make.orig Fri Feb 24 14:19:59 1995
+++ readline/Make Mon May 14 10:33:07 2001
@@ -34,8 +34,7 @@ INCDIR = ..
READLINE_DEFINES = $(TYPES) -DVI_MODE
DEBUG_FLAGS = -g
-LDFLAGS = $(DEBUG_FLAGS)
-CFLAGS = $(DEBUG_FLAGS) $(USG) -I. -I..
+CFLAGS += $(USG) -I. -I..
# A good alternative is gcc -traditional.
#CC = gcc -traditional

View File

@ -1,82 +0,0 @@
$OpenBSD: patch-readline_readline_c,v 1.2 2004/06/07 05:58:45 david Exp $
--- readline/readline.c.orig 1995-02-24 15:20:03.000000000 -0600
+++ readline/readline.c 2004-06-06 22:06:07.000000000 -0500
@@ -610,22 +610,22 @@ rl_signal_handler (sig)
rl_set_signals ()
{
- old_int = (SigHandler *)signal (SIGINT, rl_signal_handler);
+ old_int = (SigHandler *)signal (SIGINT, (void *)rl_signal_handler);
if (old_int == (SigHandler *)SIG_IGN)
signal (SIGINT, SIG_IGN);
- old_alrm = (SigHandler *)signal (SIGALRM, rl_signal_handler);
+ old_alrm = (SigHandler *)signal (SIGALRM, (void *)rl_signal_handler);
if (old_alrm == (SigHandler *)SIG_IGN)
signal (SIGALRM, SIG_IGN);
#if defined (SIGTSTP)
- old_tstp = (SigHandler *)signal (SIGTSTP, rl_signal_handler);
+ old_tstp = (SigHandler *)signal (SIGTSTP, (void *)rl_signal_handler);
if (old_tstp == (SigHandler *)SIG_IGN)
signal (SIGTSTP, SIG_IGN);
#endif
#if defined (SIGTTOU)
- old_ttou = (SigHandler *)signal (SIGTTOU, rl_signal_handler);
- old_ttin = (SigHandler *)signal (SIGTTIN, rl_signal_handler);
+ old_ttou = (SigHandler *)signal (SIGTTOU, (void *)rl_signal_handler);
+ old_ttin = (SigHandler *)signal (SIGTTIN, (void *)rl_signal_handler);
if (old_tstp == (SigHandler *)SIG_IGN)
{
@@ -635,26 +635,26 @@ rl_set_signals ()
#endif
#if defined (SIGWINCH)
- old_sigwinch = (SigHandler *)signal (SIGWINCH, rl_handle_sigwinch);
+ old_sigwinch = (SigHandler *)signal (SIGWINCH, (void *)rl_handle_sigwinch);
#endif
}
rl_clear_signals ()
{
- signal (SIGINT, old_int);
- signal (SIGALRM, old_alrm);
+ signal (SIGINT, (void *)old_int);
+ signal (SIGALRM, (void *)old_alrm);
#if defined (SIGTSTP)
- signal (SIGTSTP, old_tstp);
+ signal (SIGTSTP, (void *)old_tstp);
#endif
#if defined (SIGTTOU)
- signal (SIGTTOU, old_ttou);
- signal (SIGTTIN, old_ttin);
+ signal (SIGTTOU, (void *)old_ttou);
+ signal (SIGTTIN, (void *)old_ttin);
#endif
#if defined (SIGWINCH)
- signal (SIGWINCH, old_sigwinch);
+ signal (SIGWINCH, (void *)old_sigwinch);
#endif
}
#endif /* HANDLE_SIGNALS */
@@ -1700,8 +1700,14 @@ update_line (old, new, current_line)
return;
wsatend = 1; /* flag for trailing whitespace */
- ols = oe - 1; /* find last same */
- nls = ne - 1;
+
+ /* find last same */
+ ols = oe;
+ if (oe != old)
+ ols--;
+ nls = ne;
+ if (ne != new)
+ nls--;
while ((*ols == *nls) && (ols > ofd) && (nls > nfd))
{
if (*ols != ' ')

View File

@ -1,11 +0,0 @@
$OpenBSD: patch-sample_icbrc,v 1.2 2010/05/22 14:23:48 espie Exp $
--- sample.icbrc.orig Fri Feb 24 22:19:29 1995
+++ sample.icbrc Sat May 22 16:16:44 2010
@@ -15,6 +15,7 @@ oset tabreply false # set to "true" to put the source
oset autodel false # set to "true" to have nicks that generate an "error -
# so-and-so not signed on" removed from tab history
#echoback on # uncomment to see your own public messages
+#oset printtime true # print time in front of every message
#==============================================================================#
# procedures

View File

@ -1,37 +0,0 @@
$OpenBSD: patch-tcl_Make,v 1.1 2001/05/14 16:42:55 millert Exp $
--- tcl/Make.orig Fri Feb 24 14:19:48 1995
+++ tcl/Make Mon May 14 10:33:04 2001
@@ -6,18 +6,11 @@
# You should not need to modify this makefile.
LIBDIR = ..
-CFLAGS = $(TCLCFLAGS) -I. -DTCL_VERSION=\"3.3\"
+CFLAGS += $(TCLCFLAGS) -I. -DTCL_VERSION=\"3.3\"
#PMAKE = &
SRC = \
panic.c \
- strchr.c \
- strerror.c \
- strpbrk.c \
- strspn.c \
- strstr.c \
- strtol.c \
- strtoul.c \
tclAssem.c \
tclBasic.c \
tclCmdAH.c \
@@ -30,13 +23,6 @@ SRC = \
OBJ = \
panic.o \
- strchr.o \
- strerror.o \
- strpbrk.o \
- strspn.o \
- strstr.o \
- strtol.o \
- strtoul.o \
tclAssem.o \
tclBasic.o \
tclCmdAH.o \

View File

@ -1,36 +0,0 @@
$OpenBSD: patch-tcl_panic_c,v 1.2 2010/05/22 14:23:48 espie Exp $
--- tcl/panic.c.orig Fri Feb 24 22:19:49 1995
+++ tcl/panic.c Sat May 22 16:16:44 2010
@@ -19,7 +19,7 @@ static char rcsid[] = "$Header: /home/agamotto/mark/pk
#include <stdio.h>
#include <stdlib.h>
-#include <varargs.h>
+#include <stdarg.h>
/*
*----------------------------------------------------------------------
@@ -39,19 +39,18 @@ static char rcsid[] = "$Header: /home/agamotto/mark/pk
#ifndef lint
void
-panic(va_alist)
- va_dcl /* char *format, then any number of additional
+panic(const char *format, ...)
+ /* char *format, then any number of additional
* values to be printed under the control of
* format. This is all just the same as you'd
* pass to printf. */
{
- char *format;
va_list args;
- va_start(args);
- format = va_arg(args, char *);
+ va_start(args, format);
(void) vfprintf(stderr, format, args);
(void) fflush(stderr);
+ va_end(args);
abort();
}
#else

View File

@ -1,21 +0,0 @@
$OpenBSD: patch-tcl_tclBasic_c,v 1.4 2010/05/22 14:23:48 espie Exp $
--- tcl/tclBasic.c.orig Fri Feb 24 22:19:53 1995
+++ tcl/tclBasic.c Sat May 22 16:16:44 2010
@@ -656,7 +656,7 @@ Tcl_Eval(interp, cmd, flags, termPtr)
length = strlen(iPtr->result);
if ((limit - dst) < length) {
char *newCopy;
- int delta;
+ size_t delta;
copySize = length + 10 + dst - copy;
newCopy = (char *) malloc((unsigned) copySize);
@@ -869,7 +869,7 @@ Tcl_Eval(interp, cmd, flags, termPtr)
if (dst >= limit) {
char *newCopy;
- int delta;
+ size_t delta;
copySize *= 2;
newCopy = (char *) malloc((unsigned) copySize);

View File

@ -1,71 +0,0 @@
$OpenBSD: patch-tcl_tclCmdAH_c,v 1.3 2014/11/19 20:48:00 sthen Exp $
--- tcl/tclCmdAH.c.orig Fri Feb 24 21:19:53 1995
+++ tcl/tclCmdAH.c Wed Nov 19 20:36:11 2014
@@ -19,16 +19,13 @@
static char rcsid[] = "$Header: /home/cvs/ports/net/icb/patches/Attic/patch-tcl_tclCmdAH_c,v 1.3 2014/11/19 20:48:00 sthen Exp $ SPRITE (Berkeley)";
#endif /* not lint */
-#ifdef linux
-#include <unistd.h>
-#endif /* linux */
-
#include <ctype.h>
#include <errno.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <sys/types.h>
#include <sys/errno.h>
#include <sys/file.h>
@@ -38,9 +35,17 @@ static char rcsid[] = "$Header: /home/agamotto/mark/pk
#include <sys/wait.h>
#include "tclInt.h"
+#if (defined(__unix__) || defined(unix)) && !defined(USG)
+#include <sys/param.h>
+#endif
+
extern int errno;
+#if !(defined(BSD) && BSD >= 199306)
extern long lseek();
+#endif
+#ifndef BSD4_4
extern char *mktemp();
+#endif
/*
*----------------------------------------------------------------------
@@ -430,7 +435,7 @@ Tcl_ExecCmd(dummy, interp, argc, argv)
int pid = -1; /* -1 means child process doesn't
* exist (yet). Non-zero gives its
* id (0 only in child). */
- union wait status;
+ int status;
char *cmdName, *execName;
/*
@@ -501,8 +506,13 @@ Tcl_ExecCmd(dummy, interp, argc, argv)
} else {
char tmp[sizeof(TMP_FILE_NAME) + 1];
strcpy(tmp, TMP_FILE_NAME);
+#ifdef BSD4_4
+ mkstemp(tmp);
+ stdIn[0] = mkstemp(tmp);
+#else
mktemp(tmp);
stdIn[0] = open(tmp, O_RDWR|O_CREAT, 0);
+#endif
if (stdIn[0] < 0) {
sprintf(interp->result,
"couldn't create input file for \"%.50s\" command: %.50s",
@@ -642,7 +652,7 @@ Tcl_ExecCmd(dummy, interp, argc, argv)
sprintf(interp->result, "command terminated abnormally");
result = TCL_ERROR;
}
- result = status.w_retcode;
+ result = WEXITSTATUS(status);
}
if (stdIn[0] != -1) {
close(stdIn[0]);

View File

@ -1,19 +0,0 @@
$OpenBSD: patch-tcl_tclHistory_c,v 1.2 2001/05/14 16:42:55 millert Exp $
--- tcl/tclHistory.c.orig Fri Feb 24 14:19:55 1995
+++ tcl/tclHistory.c Mon May 14 10:33:07 2001
@@ -664,6 +664,7 @@ RevCommand(iPtr, string)
revPtr->lastIndex = iPtr->evalLast - iPtr->historyFirst - 1;
revPtr->newSize = strlen(string);
revPtr->newBytes = malloc((unsigned) (revPtr->newSize+1));
+ revPtr->nextPtr = NULL;
strcpy(revPtr->newBytes, string);
InsertRev(iPtr, revPtr);
}
@@ -732,6 +733,7 @@ RevResult(iPtr, string)
argv[0] = string;
revPtr->newBytes = Tcl_Merge(1, argv);
revPtr->newSize = strlen(revPtr->newBytes);
+ revPtr->nextPtr = NULL;
InsertRev(iPtr, revPtr);
}

View File

@ -1,55 +0,0 @@
$OpenBSD: patch-tcl_tclProc_c,v 1.1 2001/05/14 16:42:55 millert Exp $
--- tcl/tclProc.c.orig Fri Feb 24 14:19:56 1995
+++ tcl/tclProc.c Mon May 14 10:33:04 2001
@@ -124,8 +124,8 @@ Tcl_ProcCmd(dummy, interp, argc, argv)
argPtr = (Var *) malloc(VAR_SIZE(nameLength, valueLength));
procPtr->argPtr = argPtr;
} else {
- argPtr->nextPtr = (Var *) malloc(VAR_SIZE(nameLength, valueLength));
- argPtr = argPtr->nextPtr;
+ procPtr->argPtr->nextPtr = (Var *) malloc(VAR_SIZE(nameLength, valueLength));
+ argPtr = procPtr->argPtr->nextPtr;
}
strcpy(argPtr->name, fieldValues[0]);
if (fieldCount == 2) {
@@ -136,6 +136,7 @@ Tcl_ProcCmd(dummy, interp, argc, argv)
}
argPtr->valueLength = valueLength;
argPtr->flags = 0;
+ argPtr->globalPtr = NULL;
argPtr->nextPtr = NULL;
free((char *) fieldValues);
}
@@ -793,11 +794,13 @@ InterpProc(procPtr, interp, argc, argv)
*/
procDone:
- for (argPtr = frame.varPtr; argPtr != NULL; argPtr = argPtr->nextPtr) {
+ for (argPtr = frame.varPtr; argPtr != NULL;) {
+ void *tmp = argPtr;
if (argPtr->flags & VAR_DYNAMIC) {
free(argPtr->value);
}
- free((char *) argPtr);
+ argPtr = argPtr->nextPtr;
+ free(tmp);
}
iPtr->framePtr = frame.callerPtr;
iPtr->varFramePtr = frame.callerVarPtr;
@@ -826,13 +829,14 @@ void
ProcDeleteProc(procPtr)
register Proc *procPtr; /* Procedure to be deleted. */
{
- register Var *argPtr;
+ register Var *argPtr, *arg1Ptr;
free((char *) procPtr->command);
- for (argPtr = procPtr->argPtr; argPtr != NULL; argPtr = argPtr->nextPtr) {
+ for (argPtr = procPtr->argPtr; argPtr != NULL; argPtr = arg1Ptr) {
if (argPtr->flags & VAR_DYNAMIC) {
free(argPtr->value);
}
+ arg1Ptr = argPtr->nextPtr;
free((char *) argPtr);
}
free((char *) procPtr);

View File

@ -1,5 +0,0 @@
This is a chat client similar to irc, but for the icb protocol.
Virtually nobody uses it these days.
Note that both ircII and irssi-icb have icb protocol support, and are
somewhat more convenient.

View File

@ -1,10 +0,0 @@
@comment $OpenBSD: PLIST,v 1.10 2004/09/15 18:17:40 espie Exp $
bin/icb
lib/icb/
lib/icb/bartender
lib/icb/confuse
lib/icb/echofile
share/examples/icb/
share/examples/icb/sample.icbrc
share/examples/icb/sample.icbserverdb
@sample lib/icbserverdb