wip/powwow: Import as powwow-1.2.20

Changelog:

2019-05-21    Steve Slaven <bpk@hoopajoo.net>
        * version bump

2019-05-21    Nils Schimmelmann <nschimme@gmail.com>
        * Fix use of undeclared identifier 'SIGWINCH' on Mac

2019-04-23    Steve Slaven <bpk@hoopajoo.net>
        * bump versions

2019-04-23    powwow@askgustav.com <powwow@askgustav.com>
        * add compile to .gitignore
        * rename configure.in to configure.ac
        * require C89 and set _XOPEN_SOURCE=700 when compiling
        * make a variable more local in a function
        * fix possible read outside buffer
        * retroactively bump versions to 1.2.18
        * remove an unused variable and function
        * remove some non-ANSI C support
        * better handle prompts with control characters

2018-09-25    Steve Slaven <bpk@hoopajoo.net>
        * fix unsigned/signed comparison
        * fix off-by-one

2018-09-11    Steve Slaven <bpk@hoopajoo.net>
        * version bump

2018-09-05    powwow@askgustav.com <powwow@askgustav.com>
        * support IPv6
        * fix bugs in carriage return handling
        * more robust multibyte character handling
        * remove unused function tcp_read_addIAC()
        * make sure to use the correct fdset in call to select()

2013-07-15    Steve Slaven <bpk@hoopajoo.net>
        * version bumps
        * pull from kalev
        * debian file updates

2013-07-13    Gustav Hållberg <gustav@gmail.com>
        * stop using bzero() and check a few return values

2013-07-10    Kalev Lember <kalevlember@gmail.com>
        * build: Error out if curses libraries weren't found
        * README: Update the link to MUME
        * wrap_print: Fix an endless loop with 0-length strings

2013-03-25    Kalev Lember <kalevlember@gmail.com>
        * Enable TCP keep-alive

2011-10-01    Kalev Lember <kalevlember@gmail.com>
        * Use AC_SEARCH_LIBS for libdl

2009-09-01    Steve Slaven <bpk@hoopajoo.net>
        * bump

2009-09-01    Kalev Lember <kalev@smartlink.ee>
        * Match prompts longer than terminal width
        * plugtest.c: fix segmentation fault at load time
        * Create empty ChangeLog if we build from git tree

2009-04-30    Steve Slaven <bpk@hoopajoo.net>
        * Version bump

2009-04-22    Steve Slaven <bpk@hoopajoo.net>
        * Changed to gpl2+

2009-04-21    Steve Slaven <bpk@hoopajoo.net>
        * Update license to gpl2+

2009-04-20    Kalev Lember <kalev@smartlink.ee>
        * Symlink powwow-movieplay to powwow-movie2ascii.
        * Rename muc to powwow-muc.
        * Rename movie_play to powwow-movieplay.
        * Move "follow" and "catrw" to noinst_PROGRAMS.

2009-04-14    Steve Slaven <bpk@hoopajoo.net>
        * Bump
        * Include powwow.6.utf-8 in the dist
        * version bump

2009-04-11    Steve Slaven <bpk@hoopajoo.net>
        * Updated rcs type for mkdist
        * This is the pre-rcs history, appended to the Changelog when
          autogenerated
        * This is autogenerated

2009-04-11    Kalev Lember <kalev@smartlink.ee>
        * cmd.c: Fix a small memory leak in ptrdup2.

2009-04-08    Kalev Lember <kalev@smartlink.ee>
        * Rename movie.c -> movie_play.c
        * Add a configure option to select plugin directory.
        * configure.in: Display summary at the end of configure run.
        * cmd2.c: Move aliases/actions back to default group if it was
          specified as '*'.
        * Rename ChangeLog.old -> ChangeLog.
        * Add more files to .gitignore.

2009-04-08    Jahara <nschimme@gmail.com>
        * cmd2.c: Fixed setting alias/action groups back to default.

2009-03-25    Kalev Lember <kalev@smartlink.ee>
        * Remove autogenerated files.
        * autogen.sh: New script to regenerate autotools files.
        * powwow.doc: Update IAC GA related documentation.

2009-01-17    Gustav Hållberg <gustav@gmail.com>
        * fixed minor bug when running out of memory, introduced by
          0bae10b19a62e285746e2a4aad963928018d1a53
        * properly handle when tty writes block; fixes possible lock-up
          introduced by 277a06dbb45f4f249bb3f09d524ae064c842b7c5
        * bugfixed #capture together with multibyte output locales
          such as UTF-8
        * semi-properly handle IACs in MPI messages
        * removed unused variable
        * added #addstatic command
        * added .gitignore
        * cleaned up #option code and added '#option list'
        * fixed formatting errors in '#help'
        * support different man page encodings
        * make --enable-bsd default on OS X (darwin) hosts
        * support ./configure --disable-FEATURE
        * minor typo fixes
        * bugfixes for characters read from tty with high bit set
        * disallow #rebind of key sequence which is the prefix of
          another sequence
        * fixed memory leak caused by 'ptr' variables not getting their
          "signature" set
        * set better $TITLE when viewing help texts
        * cleaned up the man page a bit
        * corrected spelling of Mattias Engdegård's last name
        * bugfixed error message for '#action <some-unknown-action>'
        * fixed tty_raw_write to take a size_t length instead of int
        * manually buffer data written to tty with USE_LOCALE; this
          fixes buffering problems for some platforms
        * when compiling with GCC, use attribute((format, (printf, ...))
          for tty_printf
        * fixed problem when a tcp packet ends with an unterminated
          escape code
        * fixed some compilation warnings
        * renamed _cmd_init() to initialize_cmd() and added a function
          prototype for it
        * changed file encoding to utf-8

2008-01-09    Steve Slaven <bpk@hoopajoo.net>
        * More version bumps
        * Version number bump

2007-10-10    Steve Slaven <bpk@hoopajoo.net>
        * Switched to using pointers to save the last space because
          counters could be off if there were ansi sequences

2007-10-09    Steve Slaven <bpk@hoopajoo.net>
        * Version isn't a valid keyword
        * Fix debian version numbers
        * Version bump
        * This should change the option +wrap to do word wrapping
          instead of just line wrapping
        * Don't try and load non-.so files in cmd_module

2007-03-08    Steve Slaven <bpk@hoopajoo.net>
        * This should again fix the double-free bug that was once fixed
          in perlwow

2006-12-07    Steve Slaven <bpk@hoopajoo.net>
        * Fixed version numbers

2006-11-08    Steve Slaven <bpk@hoopajoo.net>
        * This fixed #bind and #rebind problems, patch from kalev lember

2006-10-20    Steve Slaven <bpk@hoopajoo.net>
        * More checks for building in cygwin

2006-03-24    Steve Slaven <bpk@hoopajoo.net>
        * Removed malloc.h since it's obsolete, fixed follow.c to not
          use tty_read_fd since it looks like a copy-paste job that
          didn't get fixed and causes brokenness on bsd
        * Fixed maintainer line

2006-02-06    Steve Slaven <bpk@hoopajoo.net>
        * Updated debian build, bumped version

2006-02-02    Steve Slaven <bpk@hoopajoo.net>
        * Fixed up copyright symbols and display (Dain)
        * Fixes crash if non-latin-1 character is entered before
          connecting to a server (Dain)

2006-01-31    Steve Slaven <bpk@hoopajoo.net>
        * Fixes bugged #var $(expression). bug #1: It was possible to
          create variables with illegal names. bug #2: Expressions like
          "-30" or "+5" were incorrectly interpretted as named variables
          which were then completely inaccessible. bug #3: Deletion of
          existing named variable via #var $(expression)= caused crash.
          (pointer to var-node was not set)
        * Better handling of line continuation (Elestir)
        * 1. Allows empty-line matching using regexp. E.g.: gagging of
          all empty lines #action %empty ^$=
        * Fixes operator . (dot) which didn't check for valid index
          range. (Elestir)
        * Make speedwalk execute aliases if defined instead of just
          sending directions (Elestir)
        * Allow configuring the group delimiter to any arbitrary string
        * A patch that fixes a problem with not restoring the fcntl
          flags for stdout before running a #! command.

2005-11-22    Steve Slaven <bpk@hoopajoo.net>
        * Fix for segfault when viewing a single alias from Kalev Lember
          <kalev@smartlink.ee>

2005-11-13    Steve Slaven <bpk@hoopajoo.net>
        * This is the new config for mkdist
        * These are autogenerated files and don't need to be tracked

2005-11-11    Steve Slaven <bpk@hoopajoo.net>
        * Updated news in preparation for release

2005-10-28    Steve Slaven <bpk@hoopajoo.net>
        * Added arch and maintainer to debian files
        * Added #speedwalk to documentation
        * Added #speedwalk command for using speedwalks even if you have
          opt_speedwalk set to off

2005-10-27    Steve Slaven <bpk@hoopajoo.net>
        * Updated where to send patches/bug reports in man page
        * Updated version numbers, added COPYING file to shared dist to
          that #help copyright works
        * This fixes a tiny memory leak caused by not freeing the copy
          of a variable if used in a comparison on the left side,
          valgrind output:

2005-10-21    Steve Slaven <bpk@hoopajoo.net>
        * Added some casts because byte is unsigned char and some
          functions in main wanted to have signed chars, this was the
          previous behaviour but the compiler spit out warnings, now it
          shouldn't anymore.

2005-09-16    Steve Slaven <bpk@hoopajoo.net>
        * Fix warnings during muc compile

2005-09-13    Steve Slaven <bpk@hoopajoo.net>
        * Updated news and some debian control files

2005-08-30    Steve Slaven <bpk@hoopajoo.net>
        * Fixed initializing default completions using new command
          structures

2005-06-10    Steve Slaven <bpk@hoopajoo.net>
        * Added #module documentation

2005-06-03    Steve Slaven <bpk@hoopajoo.net>
        * Applied patch from Michael Sterrett <mr_bones_@gentoo.org>
          that fixes the code that locates the copyright file

2005-04-05    Steve Slaven <bpk@hoopajoo.net>
        * Changed some contact info to bpk@hoopajoo.net for bug reports
        * Added documentation of the #group command and line
          continuation
        * Added line-continuation support to the #ex command

2005-04-04    Steve Slaven <bpk@hoopajoo.net>
        * Updated build-process information and updated where bugs and
          patches should be sent to

2005-03-22    Steve Slaven <bpk@hoopajoo.net>
        * Updated news
        * Added 1.2.8 news, fixed but in upcase/downcase word (Dain)

2005-03-21    Steve Slaven <bpk@hoopajoo.net>
        * Updated debian version, make #module loaded objects export
          their symbols globally (needed to allow binary xs modules in
          perl to get to each others symbols)
        * A rough overview of module support
        * use tty_printf since printf will not work with locales
        * Install powwow.doc and powwow.help in $pkgdatadir/ and also
          set POWWOW_DIR to match so that online help should be found
          after a "make install"
        * Added help on #module
        * Moved #module before #movie
        * Wide character (locale) support from Dain, changed output of
          the compiled options line since there are more compile time
          options now
        * Internally renamed some option flags to match their #opt
          counterparts: echo_int => opt_info echo_key => opt_keyecho
          echo_ext => opt_echo
        * Convert all `' to "" as per the powwow-1.2.6-dain patch. Note
          I did not apply the patch since 1.2.7 has some differences to
          1.2.5 with regard to command handling and things, so I'm
          applying the diff parts by hand mostly
        * Don't include dlfcn.h if no libdl
        * Check for libdl
        * Do not include #module support if there is no libdl

2005-03-13    Steve Slaven <bpk@hoopajoo.net>
        * Updated to include the debian build files in the make dist,
          also regenerated some of teh automake/conf stuff

2005-03-12    Steve Slaven <bpk@hoopajoo.net>
        * Made #module print messages prefixed with #module instead
          of #lib, also display the path to the library that was
          loaded so that if testing new libraries you can tell which
          one was found :p
        * Changed #module to not require the .so extension, and added
          some checks for _GNU_SOURCE in ptr.h so that modules compiled
          with GNU externsions will work with powwow.h (like perl)
        * Changed the #module command to handle searching multiple
          (currently compiled in) library paths, and remove the
          requirement for the .so part of the filename so that in future
          versions we can support .dll under cygwin
        * Initial revision
        * New repository initialized by cvs2svn.
2019-03-18    powwow@askgustav.com <powwow@askgustav.com>
        * handle more control characters in prompts
        * drop support for non-ANSI C
This commit is contained in:
ng0 2019-06-21 12:43:59 +00:00
parent 966c4ea50f
commit 20926beb6d
11 changed files with 179 additions and 0 deletions

View File

@ -3031,6 +3031,7 @@ SUBDIR+= postoffice
SUBDIR+= postr
SUBDIR+= povray
SUBDIR+= powerdevil
SUBDIR+= powwow
SUBDIR+= ppp
SUBDIR+= ppr
SUBDIR+= praat

9
powwow/DESCR Normal file
View File

@ -0,0 +1,9 @@
powwow is a client program, which replaces telnet for the lazy
mudder who wants some (only some?) extra features.
It is primarily designed for DikuMUDs, but nothing prevents its use
for other types of muds. powwow is based on another client, cancan,
and cancan was originally inspired by tintin (yet another client)
by Peter Unold (pjunold@daimi.aau.dk), but is entirely re-written.
powwow also implements the MUME remote editing protocol, which
enables you to edit texts on the mud using your own favourite
editor, several texts at once if you have a windowing terminal.

17
powwow/Makefile Normal file
View File

@ -0,0 +1,17 @@
# $NetBSD: Makefile,v 1.16 2012/10/06 11:54:50 asau Exp $
DISTNAME= powwow-1.2.20
CATEGORIES= games
MASTER_SITES= http://hoopajoo.net/static/projects/
MAINTAINER= ng0@n0.is
HOMEPAGE= http://hoopajoo.net/projects/powwow.html
COMMENT= Client to play MUDs
LICENSE= gnu-gpl-v2
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --enable-bsd
.include "../../mk/curses.buildlink3.mk"
.include "../../mk/termcap.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

5
powwow/PLIST Normal file
View File

@ -0,0 +1,5 @@
@comment $NetBSD: PLIST,v 1.2 2009/06/14 17:56:53 joerg Exp $
bin/powwow
man/man6/powwow.6
share/powwow/powwow.doc
share/powwow/powwow.help

18
powwow/TODO Normal file
View File

@ -0,0 +1,18 @@
* Correctly patch alloca() usage. Upstream has been contacted for
resolution.
* this:
tty.c: In function 'tty_start':
tty.c:64:18: error: 'ECHO' undeclared (first use in this function); did you mean 'O_ECHO'?
# define O_ECHO ECHO
^
tty.c:184:49: note: in expansion of macro 'O_ECHO'
ttyb.sg_flags = (ttyb.sg_flags|O_CBREAK) & ~O_ECHO;
^~~~~~
tty.c:64:18: note: each undeclared identifier is reported only once for each function it appears in
# define O_ECHO ECHO
^
tty.c:184:49: note: in expansion of macro 'O_ECHO'
ttyb.sg_flags = (ttyb.sg_flags|O_CBREAK) & ~O_ECHO;
^~~~~~

11
powwow/distinfo Normal file
View File

@ -0,0 +1,11 @@
$NetBSD: distinfo,v 1.10 2015/11/03 20:57:01 agc Exp $
SHA1 (powwow-1.2.20.tar.gz) = 1bb73ee507b89bea57f78e4101c02855c2485d3c
RMD160 (powwow-1.2.20.tar.gz) = c6393efaecc492ca4df1b0ed5b7ad5fb93b22ce4
SHA512 (powwow-1.2.20.tar.gz) = bca3075201acb23f9fe0ea5c00b510efae1d00fd049104134396aae34cb5a5336ee6634ca72886554f4684add325f723c3f02503c307652a99929fca066d1720
Size (powwow-1.2.20.tar.gz) = 313463 bytes
SHA1 (patch-main_c) = 0be38d2e4a1c7c8a7cb9cc341d7df99dcbfc36b2
SHA1 (patch-ptr_c) = 0042037fa939751477c480060f1506b176805f48
SHA1 (patch-ptr_h) = 8aaf1438c296b7813a23f2c71f839d492b1f42b4
SHA1 (patch-tcp_c) = 919bdefdebc3896c8a7d6a6ba884f47d0b10a372
SHA1 (patch-tty_c) = c736524e71fa39d1b72aa31b4f2ce736bcd8f9f5

View File

@ -0,0 +1,20 @@
$NetBSD$
# HG changeset patch
# User ng0@n0.is
# Date 1561112947 0
# Fri Jun 21 10:29:07 2019 +0000
# Node ID aaf73ded1091bceebe83aece7c80390c58ebdd63
# Parent c8b10f57c09660162b34ad143ee294f5ecc5aa0f
main.c: Remove unnecessary variable declaration of errno.
diff -r c8b10f57c096 -r aaf73ded1091 main.c
--- main.c~ Fri Jun 21 10:26:10 2019 +0000
+++ main.c Fri Jun 21 10:29:07 2019 +0000
@@ -72,7 +72,6 @@
#endif
/* are these really needed? */
-extern int errno;
extern int select();
#ifdef USE_REGEXP

View File

@ -0,0 +1,24 @@
$NetBSD$
# HG changeset patch
# User ng0@n0.is
# Date 1561112770 0
# Fri Jun 21 10:26:10 2019 +0000
# Node ID c8b10f57c09660162b34ad143ee294f5ecc5aa0f
# Parent d8cbf1749395e6cd7a5901a88ba253bc14a338ae
Avoid conflict with libc memrchr. Appears to have the same intent,
but this is the path of least resistance.
Authored by dholland@ in revision 1.1 2011/10/03
diff -r d8cbf1749395 -r c8b10f57c096 ptr.c
--- ptr.c~ Fri Jun 21 10:22:03 2019 +0000
+++ ptr.c Fri Jun 21 10:26:10 2019 +0000
@@ -419,7 +419,7 @@
* find last occurrence of c in p
* return NULL if none found.
*/
-char *memrchr(char *p, int lenp, char c)
+char *memrchrx(char *p, int lenp, char c)
{
char *v, *s = p;

View File

@ -0,0 +1,24 @@
$NetBSD$
# HG changeset patch
# User ng0@n0.is
# Date 1561112523 0
# Fri Jun 21 10:22:03 2019 +0000
# Node ID d8cbf1749395e6cd7a5901a88ba253bc14a338ae
# Parent bbd2f93df3a0cce27293a911c5ea52a1cbbf7637
Avoid conflict with libc memrchr. Appears to have the same intent,
but this is the path of least resistance.
Authored by dholland@ on 2011/10/03 in patch revision 1.1
diff -r bbd2f93df3a0 -r d8cbf1749395 ptr.h
--- ptr.h~ Fri Jun 21 10:19:28 2019 +0000
+++ ptr.h Fri Jun 21 10:22:03 2019 +0000
@@ -69,7 +69,7 @@
/* TODO: watch memrchr, it is defined differently here than under _GNU_SOURCE,
* so it could cause bizarre results if a module makes use of a library that
* uses it */
-char *memrchr(char *p, int lenp, char c);
+char *memrchrx(char *p, int lenp, char c);
#endif
#endif /* _PTR_H_ */

View File

@ -0,0 +1,28 @@
$NetBSD$
# HG changeset patch
# User ng0@n0.is
# Date 1561115895 0
# Fri Jun 21 11:18:15 2019 +0000
# Node ID 15ce679827e86b9d994e5aff0c364f3bba33ffc4
# Parent aaf73ded1091bceebe83aece7c80390c58ebdd63
AI_V4MAPPED may not be defined on some platforms.
Define to 0 in such cases, so the flag won't be affected.
diff -r aaf73ded1091 -r 15ce679827e8 tcp.c
--- tcp.c~ Fri Jun 21 10:29:07 2019 +0000
+++ tcp.c Fri Jun 21 11:18:15 2019 +0000
@@ -49,6 +49,14 @@
# define TELOPTSTR(n) ((n) > NTELOPTS ? "unknown" : telopts[n])
#endif
+/*
+ * some platforms do not have AI_V4MAPPED, define to 0
+ * so bitwise OR won't be changed
+ */
+#ifndef AI_V4MAPPED
+# define AI_V4MAPPED 0
+#endif
+
int tcp_fd = -1; /* current socket file descriptor
* -1 means no socket */
int tcp_main_fd = -1; /* socket file descriptor of main connect.

View File

@ -0,0 +1,22 @@
$NetBSD$
# HG changeset patch
# User ng0@n0.is
# Date 1561116677 0
# Fri Jun 21 11:31:17 2019 +0000
# Node ID e208602bebbca226bfec03c91b3c8dc23baac0bb
# Parent f6aa85dbb7139b735086034c216a0c689dc6784d
Remove unnecessary alloca.h include.
https://linux.die.net/man/3/alloca:
By default the glibc version of <stdlib.h> includes <alloca.h>
diff -r f6aa85dbb713 -r e208602bebbc tty.c
--- tty.c~ Fri Jun 21 11:20:57 2019 +0000
+++ tty.c Fri Jun 21 11:31:17 2019 +0000
@@ -9,7 +9,6 @@
* (at your option) any later version.
*
*/
-#include <alloca.h>
#include <assert.h>
#include <errno.h>
#include <fcntl.h>