Use snprintf rather than sprintf. From pvaldes.

git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@431 13b04d17-f746-0410-82c6-800466cd88b0
This commit is contained in:
Tim Cava
2013-11-07 02:41:16 +00:00
parent 590ae4c685
commit 276fd24258
41 changed files with 623 additions and 222 deletions

414
Makefile
View File

@@ -1,5 +1,413 @@
# Makefile.in
#
# BitchX - by panasync
#
# targets recognised by this Makefile:
# all, everything - compiles BitchX [wserv, scr-bx, plugins]
# wserv - compiles wserv
# scr-bx - compiles scr-bx
# dll - compiles plugins
# install - installs BitchX [wserv, scr-bx] [plugins] scripts
# man pages help and translation
# installirc - installs BitchX [wserv, scr-bx]
# installwserv - installs wserv
# installscr-bx - installs scr-bx
# installdll - installs plugins
# installscript - installs the scripts
# installtranslation - installs the translation tables
# installhelp - installs the help files
# installman - installs the manual pages
# installeverything - all of the above
# install_local - installs BitchX to your home directory
# clean - remove all .o files, core, and binaries
# distclean - remove all files geneated by compilation/installation
# bxconf - compiles and runs bx-configure
# distrib - makes a tarball of the BitchX binaries
# windistrib - makes a tarball of the BitchX binaries on Win32
# package - makes a tarball of the BitchX source
# depend - computes the dependencies
SHELL = /usr/local/bin/bash SHELL = /bin/sh
default: srcdir = .
$(SHELL) ./configure
top_srcdir = .
topdir = /home/fb/bitchx/bitchx/trunk
prefix = /usr/local
exec_prefix = ${prefix}
bindir = ${exec_prefix}/bin
sbindir = ${exec_prefix}/sbin
libexecdir = ${exec_prefix}/libexec
datadir = ${prefix}/share
sysconfdir = ${prefix}/etc
sharedstatedir = ${prefix}/com
localstatedir = ${prefix}/var
libdir = ${exec_prefix}/lib
infodir = ${prefix}/info
mandir = ${prefix}/man
includedir = ${prefix}/include
oldincludedir = /usr/include
local_dir = $(HOME)
# Where the BitchX binary will be installed.
# "make install" will compile and install the program.
INSTALL_IRC = ${bindir}/$(_VERSION_)$(EXEEXT)
# Where the BitchX library will be. Generally this is the place that
# you put the scripts, help pages and translation tables. It is
# very important that you set this correctly.
IRCLIB = ${libdir}/bx
CC = gcc
DEFS = -I. -I$(topdir)/include -I$(top_srcdir)/include -I$(srcdir) -I$(srcdir)/include
LIBS = -ltcl -ldl -lncurses -lssl -lcrypto -lresolv -lm -lcrypt
# Tcl library.
TCL_LIBS = -ltcl
# These are for Tcl support.
TCL_OBJS = tcl.o
# You don't have the following, so you'll want to leave this blank.
TCL_SRCS = $(srcdir)/tcl.c
# Set this to -g if you want to be able to debug the client, otherwise
# use -O to have the compiler do some optimization instead.
CFLAGS = -g -O2 -fno-strict-aliasing -Wall
# Set this to -s if you want the binary to be stripped.
LDFLAGS =
# These are for the cd device player.
CD_SRCS =
CD_OBJS =
# This is the executable suffix for the target operating system.
EXEEXT =
# Extra files.
DEFAULT_CTOOLZ_DIR = ~/.BitchX
DEFAULT_MSGLOGFILE = BitchX.away
DEFAULT_BITCHX_HELP_FILE = BitchX.help
DEFAULT_SCRIPT_HELP_FILE = BitchX.help
DEFAULT_BITCHX_KICK_FILE = BitchX.kick
DEFAULT_BITCHX_QUIT_FILE = BitchX.quit
DEFAULT_BITCHX_IRCNAME_FILE = BitchX.ircnames
# Full path of the directory for BitchX help files.
HELPDIR = $(IRCLIB)/help
# Full path of the directory for the BitchX scripts.
INSTALL_SCRIPT = $(IRCLIB)/script
# Default setting for IRCPATH where BitchX will look for
# its script files if the environment variable is undefined.
# Usually, this should contain the same path as used for INSTALL_SCRIPT in
# the Makefile, but it can contain multiple path elements
# separated by colons. The path MUST lead to an existing directory,
# because the 'global' script is expected to be found there.
IRCPATH = $(DEFAULT_CTOOLZ_DIR):$(DEFAULT_CTOOLZ_DIR)/plugins:.:$(PLUGINDIR):$(INSTALL_SCRIPT):$(IRCLIB)
# Path for TRANSLATION variable.
TRANSLATION_PATH = $(IRCLIB)/translation
# This is where the optional plugins will be copied to.
PLUGINDIR = $(IRCLIB)/plugins
# Plugin flags.
SHLIB_LD = gcc -shared
SHLIB_CFLAGS =
SHLIB_SUFFIX = .so
# This command will be used to install the BitchX files on Win32/OS2EMX
# systems.
WINNT_INSTALL =
# This program allows you to use screen/xterm's to put new BitchX windows
# on new screen/xterm windows.
INSTALL_WSERV = $(IRCLIB)/wserv$(EXEEXT)
# This program allows you to screen BitchX and reattach to it later.
INSTALL_SCRBX = ${bindir}/scr-bx$(EXEEXT)
# Set gzip and bzip2 options.
GZIP_ENV = --best
BZIP2 = -9 --repetitive-best
# Standard programs.
RM = rm -f
LN = ln -s
CP = cp -f
MV = mv -f
INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
VERSION = BitchX-1.2c01-svn
_VERSION_ = BitchX
MAKE_BIN = gmake
MAKE = $(MAKE_BIN) $(MFLAGS)
MFLAGS = \
'local_dir=$(HOME)' \
'INSTALL_IRC=$(INSTALL_IRC)' \
'IRCLIB=$(IRCLIB)' \
'CC=$(CC)' \
'CFLAGS=$(CFLAGS)' \
'HELPDIR=$(HELPDIR)' \
'INSTALL_WSERV=$(INSTALL_WSERV)' \
'IRCPATH=$(IRCPATH)' \
'TRANSLATION_PATH=$(TRANSLATION_PATH)' \
'LDFLAGS=$(LDFLAGS)' \
'LIBS=$(LIBS)' \
'LN=$(LN)' \
'RM=$(RM)' \
'TCL_SRCS=$(TCL_SRCS)' \
'TCL_OBJS=$(TCL_OBJS)' \
'CD_PLAY=$(CD_PLAY)' \
'CD_SRCS=$(CD_SRCS)' \
'CD_OBJS=$(CD_OBJS)' \
'TCL_LIBS=$(TCL_LIBS)' \
'PLUGINDIR=$(PLUGINDIR)' \
'_VERSION_=$(_VERSION_)' \
'VERSION=$(VERSION)' \
'INSTALL_DATA=$(INSTALL_DATA)' \
'INSTALL_SCRIPT=$(INSTALL_SCRIPT)' \
'EXEEXT=$(EXEEXT)' \
'SHLIB_CFLAGS=$(SHLIB_CFLAGS)' \
'SHLIB_SUFFIX=$(SHLIB_SUFFIX)'
## Makefile starts here.
all: Makefile .config.h $(_VERSION_) wserv scr-bx dll done
.config.h:
@if test ! -f $(topdir)/.config.h ; then touch $(topdir)/.config.h; fi
install: all installbin installdll installscript installman installhelp \
installtranslation reallydone
installeverything: install
everything: all
$(_VERSION_): .config.h
cd source \
&& $(MAKE) all
dll/dummy:
dll: .config.h $(srcdir)/Makefile dll/Makefile dll/dummy
cd dll \
&& $(MAKE) all
installdll: $(srcdir)/Makefile dll/Makefile installdirs dll
cd dll \
&& $(MAKE) 'DESTDIR=$(DESTDIR)' install
installdll_local: $(srcdir)/Makefile dll/Makefile
cd dll \
&& $(MAKE) 'PLUGINDIR=$(local_dir)/.BitchX/plugins'
installhelp: installdirs
cd $(top_srcdir)/bitchx-docs && \
for d in `find . -name .svn -prune -o -type d ! -name . -print`; do \
umask 022 && ../mkinstalldirs "$(DESTDIR)$(HELPDIR)/$$d"; \
for f in "$$d/"*; do \
if test -f "$$f"; then \
$(INSTALL_DATA) "$$f" "$(DESTDIR)$(HELPDIR)/$$d"; \
fi; \
done; \
done
for f in $(top_srcdir)/bitchx-docs/*; do \
if test -f "$$f"; then \
$(INSTALL_DATA) "$$f" "$(DESTDIR)$(HELPDIR)"; \
fi; \
done;
-(find "$(DESTDIR)$(HELPDIR)" -type f ! -name '*.bz2' ! -name '*.gz' | \
(xargs bzip2 -9f || xargs gzip -9f)) 2>/dev/null
installbin: installirc installwserv installscr-bx
installirc: installdirs $(_VERSION_)
$(INSTALL) source/$(_VERSION_)$(EXEEXT) $(DESTDIR)$(bindir)/$(VERSION)$(EXEEXT)
$(RM) $(DESTDIR)$(INSTALL_IRC)
$(LN) $(VERSION)$(EXEEXT) $(DESTDIR)$(INSTALL_IRC)
$(INSTALL_DATA) $(top_srcdir)/BitchX.help $(DESTDIR)$(IRCLIB)/$(DEFAULT_BITCHX_HELP_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.ircnames $(DESTDIR)$(IRCLIB)/$(DEFAULT_BITCHX_IRCNAME_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.quit $(DESTDIR)$(IRCLIB)/$(DEFAULT_BITCHX_QUIT_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.reasons $(DESTDIR)$(IRCLIB)/$(DEFAULT_BITCHX_KICK_FILE)
$(WINNT_INSTALL)
install_local: all local_installdirs installdll_local
$(INSTALL) source/$(_VERSION_)$(EXEEXT) $(local_dir)/bin/$(VERSION)$(EXEEXT)
$(INSTALL) $(local_dir)/bin/$(VERSION)$(EXEEXT) $(local_dir)/bin/$(_VERSION_)$(EXEEXT)
$(INSTALL) source/scr-bx$(EXEEXT) $(local_dir)/bin/scr-bx$(EXEEXT)
$(INSTALL_DATA) $(top_srcdir)/BitchX.help $(DEFAULT_CTOOLZ_DIR)/$(DEFAULT_BITCHX_HELP_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.ircnames $(DEFAULT_CTOOLZ_DIR)/$(DEFAULT_BITCHX_IRCNAME_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.quit $(DEFAULT_CTOOLZ_DIR)/$(DEFAULT_BITCHX_QUIT_FILE)
$(INSTALL_DATA) $(top_srcdir)/BitchX.reasons $(DEFAULT_CTOOLZ_DIR)/$(DEFAULT_BITCHX_KICK_FILE)
wserv: .config.h $(srcdir)/source/wserv.c $(srcdir)/source/term.c $(srcdir)/Makefile
cd source \
&& $(MAKE) wserv
scr-bx: .config.h $(srcdir)/source/scr-bx.c $(srcdir)/source/term.c $(srcdir)/Makefile
cd source \
&& $(MAKE) scr-bx
installwserv: installdirs wserv
$(INSTALL) source/wserv $(DESTDIR)$(INSTALL_WSERV)
installscr-bx: installdirs scr-bx
$(INSTALL) source/scr-bx $(DESTDIR)$(INSTALL_SCRBX)
installscript: installdirs
-@( \
if test -d $(top_srcdir)/script; then \
for i in $(top_srcdir)/script/*; do \
$(INSTALL_DATA) "$$i" $(DESTDIR)$(INSTALL_SCRIPT); \
done; \
chmod -x $(DESTDIR)$(INSTALL_SCRIPT)/*; \
fi; \
)
installtranslation: installdirs
-@( \
if test -d $(top_srcdir)/translation; then \
for i in $(top_srcdir)/translation/*; do \
$(INSTALL_DATA) "$$i" $(DESTDIR)$(TRANSLATION_PATH); \
done; \
chmod -x $(DESTDIR)$(TRANSLATION_PATH)/*; \
fi; \
)
(find $(DESTDIR)$(TRANSLATION_PATH) -type f ! -name '*.bz2' ! -name '*.gz' | \
(xargs bzip2 -9f || xargs gzip -9f) || :) 2>/dev/null
installman: installdirs
-@( \
if test -d $(top_srcdir)/doc; then \
cd $(top_srcdir)/doc; \
for i in BitchX.1; do \
if test -f $$i; then \
$(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/man1; \
fi; \
done; \
fi; \
)
(find $(DESTDIR)$(mandir)/man1/BitchX.1 -type f ! -name '*.bz2' ! -name '*.gz' | \
(xargs bzip2 -9f || xargs gzip -9f) || :) 2>/dev/null
installdirs:
umask 022 && $(top_srcdir)/mkinstalldirs $(DESTDIR)$(bindir) $(DESTDIR)$(IRCLIB) \
$(DESTDIR)$(mandir)/man1 $(DESTDIR)$(TRANSLATION_PATH) $(DESTDIR)$(INSTALL_SCRIPT) \
$(DESTDIR)$(HELPDIR)
local_installdirs:
umask 022; $(top_srcdir)/mkinstalldirs $(local_dir)/bin $(DEFAULT_CTOOLZ_DIR) $(DEFAULT_CTOOLZ_DIR)/plugins $(DEFAULT_CTOOLZ_DIR)/logs
config: bxconf
bxconf: $(srcdir)/Makefile $(srcdir)/bx-conf/Makefile.in
cd bx-conf \
&& $(MAKE) all
$(topdir)/bxconfigure || :
clean:
-@(if test -f source/Makefile; then cd source; $(MAKE) clean; fi)
-@(if test -f dll/Makefile; then cd dll; $(MAKE) clean; fi)
-@(if test -f bx-conf/Makefile; then cd bx-conf; $(MAKE) clean; fi)
distclean: clean
-@(if test -f source/Makefile; then cd source; $(MAKE) distclean; fi)
-@(if test -f dll/Makefile; then cd dll; $(MAKE) distclean; fi)
-@(if test -f bx-conf/Makefile; then cd bx-conf; $(MAKE) distclean; fi)
-$(RM) config.status
-$(RM) config.cache config.log stamp-h stamp-h[0-9]*
-$(RM) include/defs.h include/sig.inc
-$(RM) *~ *.rej core *.orig .#*
-$(RM) include/*~ include/*.rej include/core include/*.orig include/.#*
-$(RM) source/*~ source/*.rej source/core source/*.orig source/.#*
-$(RM) bitchx-docs/.#* bx-conf/.#* contrib/.#* dll/.#* doc/.#*
-$(RM) script/.#* macros/.#* translation/.#*
-$(RM) doc/*~ doc/BitchX.bat *.spec
-$(RM) Makefile
-$(CP) $(top_srcdir)/doc/Makefile $(top_srcdir)/Makefile
-$(CP) $(top_srcdir)/doc/Makefile Makefile
export: distclean
$(top_srcdir)/autogen.sh || :
package: export
cd ..; tar -cvf $(VERSION).tar $(_VERSION_); gzip $(_VERSION_)
cd ..; tar --use bzip2 -cvf $(VERSION).tar $(_VERSION_); bzip2 $(_VERSION_)
distrib: export source/$(_VERSION_)$(EXEEXT)
$(CP) source/$(_VERSION_)$(EXEEXT) $(_VERSION_)$(EXEEXT)
strip --strip-all $(_VERSION_)$(EXEEXT); gzip $(_VERSION_)$(EXEEXT)
tar -cvf $(VERSION)-bin.tar dll/*$(SHLIB_SUFFIX) \
dll/hint/BitchX.hints BitchX.*; gzip $(VERSION)-bin.tar
windistrib: install
tar -cvf $(VERSION).tar \"($IRCLIB)\"; gzip $(VERSION).tar
tar --use bzip2 -cvf $(VERSION).tar \"($IRCLIB)\"; bzip2 $(VERSION).tar
dep: depend
depend:
cd source \
&& $(MAKE) depend
Makefile: $(srcdir)/Makefile.in $(srcdir)/source/Makefile.in \
$(srcdir)/dll/Makefile.in config.status
cd $(topdir) \
&& $(SHELL) ./config.status
config.status: $(srcdir)/configure
$(SHELL) ./config.status --recheck
#$(srcdir)/configure: $(srcdir)/configure.in
# cd $(srcdir) && autoconf || :
$(top_srcdir)/aclocal.m4:
cd $(top_srcdir)/macros && ./mkaclocal
include/defs.h: stamp-h
@if test ! -f $@; then \
rm -f stamp-h; \
$(MAKE) stamp-h; \
else :; fi
stamp-h: $(srcdir)/include/defs.h.in $(topdir)/config.status
@rm -f stamp-h stamp-hT
@echo timestamp > stamp-hT 2> /dev/null
cd $(topdir) \
&& \
$(SHELL) ./config.status
@mv stamp-hT stamp-h
$(srcdir)/include/defs.h.in: $(srcdir)/./stamp-h.in
@if test ! -f $@; then \
rm -f $(srcdir)/./stamp-h.in; \
$(MAKE) $(srcdir)/./stamp-h.in; \
else :; fi
$(srcdir)/./stamp-h.in: $(top_srcdir)/configure.in
@rm -f $(srcdir)/./stamp-h.in $(srcdir)/./stamp-h.inT
@echo timestamp > $(srcdir)/./stamp-h.inT 2> /dev/null
cd $(top_srcdir) && autoheader
@mv $(srcdir)/./stamp-h.inT $(srcdir)/./stamp-h.in
done:
@echo
@echo Now type \"$(MAKE_BIN) install\" to install $(_VERSION_) globally \(if you\'re root\), or
@echo else you can type \"$(MAKE_BIN) install_local\" to install $(_VERSION_) to your home
@echo directory.
reallydone:
@echo
@echo $(_VERSION_) is now installed.
@echo Type \"$(INSTALL_IRC)\" to start.
.PHONY: clean done reallydone installdirs local_installdirs
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -1,5 +1,5 @@
SHELL = /usr/local/bin/bash SHELL = /bin/sh
default: default:
$(SHELL) ./configure --with-plugins $(SHELL) ./configure --with-plugins

View File

@@ -67,8 +67,7 @@ int delay_flush_all(void *arg, char *sub)
from_server = atoi(serv_num); from_server = atoi(serv_num);
if (channel && *channel && mode_str && user) if (channel && *channel && mode_str && user)
{ {
sprintf(buffer, "MODE %s %s%s %s\r\n", channel, plus_mode, mode_str, user); push_len = snprintf(buffer, sizeof buffer, "MODE %s %s%s %s\r\n", channel, plus_mode, mode_str, user);
push_len = strlen(buffer);
add_mode_buffer(buffer, push_len); add_mode_buffer(buffer, push_len);
mode_str_len = 0; mode_str_len = 0;
new_free(&mode_str); new_free(&mode_str);
@@ -88,8 +87,7 @@ void flush_mode_all(ChannelList *chan)
if (mode_str && user) if (mode_str && user)
{ {
sprintf(buffer, "MODE %s %s%s %s\r\n", chan->channel, plus_mode, mode_str, user); push_len = snprintf(buffer, sizeof buffer, "MODE %s %s%s %s\r\n", chan->channel, plus_mode, mode_str, user);
push_len = strlen(buffer);
add_mode_buffer(buffer, push_len); add_mode_buffer(buffer, push_len);
mode_str_len = 0; mode_str_len = 0;
new_free(&mode_str); new_free(&mode_str);
@@ -112,8 +110,7 @@ void add_mode(ChannelList *chan, char *mode, int plus, char *nick, char *reason,
if (reason) if (reason)
{ {
sprintf(buffer, "KICK %s %s :%s\r\n", chan->channel, nick, reason); push_len = snprintf(buffer, sizeof buffer, "KICK %s %s :%s\r\n", chan->channel, nick, reason);
push_len = strlen(buffer);
add_mode_buffer(buffer, push_len); add_mode_buffer(buffer, push_len);
} }
else else
@@ -124,8 +121,7 @@ void add_mode(ChannelList *chan, char *mode, int plus, char *nick, char *reason,
m_s3cat(&user, space, nick); m_s3cat(&user, space, nick);
if (mode_str_len >= max_modes) if (mode_str_len >= max_modes)
{ {
sprintf(buffer, "MODE %s %s%s %s\r\n", chan->channel, plus_mode, mode_str, user); push_len = snprintf(buffer, sizeof buffer, "MODE %s %s%s %s\r\n", chan->channel, plus_mode, mode_str, user);
push_len = strlen(buffer);
add_mode_buffer(buffer, push_len); add_mode_buffer(buffer, push_len);
new_free(&mode_str); new_free(&mode_str);
new_free(&user); new_free(&user);
@@ -150,7 +146,7 @@ BUILT_IN_COMMAND(fuckem)
add_mode(chan, "b", 0, Bans->ban, NULL, get_int_var(NUM_BANMODES_VAR)); add_mode(chan, "b", 0, Bans->ban, NULL, get_int_var(NUM_BANMODES_VAR));
for (c = 'a'; c <= 'z'; c++) for (c = 'a'; c <= 'z'; c++)
{ {
sprintf(buffer, "*!*@*%c*", c); snprintf(buffer, sizeof buffer, "*!*@*%c*", c);
add_mode(chan, "b", 1, buffer, NULL, get_int_var(NUM_BANMODES_VAR)); add_mode(chan, "b", 1, buffer, NULL, get_int_var(NUM_BANMODES_VAR));
} }
flush_mode_all(chan); flush_mode_all(chan);
@@ -501,7 +497,7 @@ BUILT_IN_COMMAND(massdeop)
for (nicks = next_nicklist(chan, NULL); nicks; nicks = next_nicklist(chan, nicks)) for (nicks = next_nicklist(chan, NULL); nicks; nicks = next_nicklist(chan, nicks))
{ {
sprintf(buffer, "%s!%s", nicks->nick, nicks->host); snprintf(buffer, sizeof buffer, "%s!%s", nicks->nick, nicks->host);
if ((all || (!isvoice && nick_isop(nicks)) || (isvoice && nick_isvoice(nicks))) && if ((all || (!isvoice && nick_isop(nicks)) || (isvoice && nick_isvoice(nicks))) &&
my_stricmp(nicks->nick, get_server_nickname(from_server)) && my_stricmp(nicks->nick, get_server_nickname(from_server)) &&
wild_match(spec, buffer)) wild_match(spec, buffer))
@@ -620,7 +616,7 @@ BUILT_IN_COMMAND(massop)
for (nicks = next_nicklist(chan, NULL); nicks; nicks = next_nicklist(chan, nicks)) for (nicks = next_nicklist(chan, NULL); nicks; nicks = next_nicklist(chan, nicks))
{ {
sprintf(buffer, "%s!%s", nicks->nick, nicks->host); snprintf(buffer, sizeof buffer, "%s!%s", nicks->nick, nicks->host);
if ((my_stricmp(nicks->nick, get_server_nickname(from_server)) && wild_match(spec, buffer))) if ((my_stricmp(nicks->nick, get_server_nickname(from_server)) && wild_match(spec, buffer)))
{ {
if ((massvoice && !nick_isvoice(nicks) && !nick_isop(nicks)) || !nick_isop(nicks)) if ((massvoice && !nick_isvoice(nicks) && !nick_isop(nicks)) || !nick_isop(nicks))
@@ -700,8 +696,7 @@ BUILT_IN_COMMAND(masskick)
*reason = 0; *reason = 0;
quote_it(rest ? rest : "MassKick", NULL, reason); quote_it(rest ? rest : "MassKick", NULL, reason);
bitchsay("Performing (%s) Mass Kick on %s", all? "opz/non-opz" : ops ? "ops":"non-opz", chan->channel); bitchsay("Performing (%s) Mass Kick on %s", all? "opz/non-opz" : ops ? "ops":"non-opz", chan->channel);
sprintf(buf, "KICK %%s %%s :\002%s\002", reason); len = snprintf(buf, sizeof buf, "KICK %%s %%s :\002%s\002", reason);
len = strlen(buf);
for (new = masskick_list; new; new = new->next) for (new = masskick_list; new; new = new->next)
{ {
send_buf = m_s3cat(&send_buf, ",", new->filter); send_buf = m_s3cat(&send_buf, ",", new->filter);

View File

@@ -1217,7 +1217,7 @@ void do_logchannel(unsigned long level, ChannelList *chan, char *format, ...)
char s[BIG_BUFFER_SIZE+1]; char s[BIG_BUFFER_SIZE+1];
va_list args; va_list args;
va_start(args, format); va_start(args, format);
vsnprintf(s, BIG_BUFFER_SIZE, format, args); vsnprintf(s, sizeof s, format, args);
va_end(args); va_end(args);
add_to_log(chan->msglog_fp, now, s, logfile_line_mangler); add_to_log(chan->msglog_fp, now, s, logfile_line_mangler);
} }

View File

@@ -573,7 +573,7 @@ int server;
log_denied("UNBAN", from, FromUserHost, to, cmd); log_denied("UNBAN", from, FromUserHost, to, cmd);
return NULL; return NULL;
} }
sprintf(ban, "%s!%s", from, FromUserHost); snprintf(ban, sizeof ban, "%s!%s", from, FromUserHost);
if (chan && chan->have_op) if (chan && chan->have_op)
{ {
if ((b = ban_is_on_channel(ban, chan))) if ((b = ban_is_on_channel(ban, chan)))
@@ -1472,7 +1472,7 @@ extern void send_ctcp (int type, char *to, int datatag, char *format, ...)
{ {
va_list args; va_list args;
va_start(args, format); va_start(args, format);
vsnprintf(putbuf, BIG_BUFFER_SIZE, format, args); vsnprintf(putbuf, sizeof putbuf, format, args);
va_end(args); va_end(args);
do_hook(SEND_CTCP_LIST, "%s %s %s %s", do_hook(SEND_CTCP_LIST, "%s %s %s %s",

View File

@@ -330,7 +330,7 @@ static time_t last_reject = 0;
va_list args; va_list args;
char buffer[BIG_BUFFER_SIZE+1]; char buffer[BIG_BUFFER_SIZE+1];
va_start(args, format); va_start(args, format);
vsnprintf(buffer, BIG_BUFFER_SIZE, format, args); vsnprintf(buffer, sizeof buffer, format, args);
va_end(args); va_end(args);
put_it("%s", buffer); put_it("%s", buffer);
} }
@@ -1273,7 +1273,7 @@ UserList *ul = NULL;
struct in_addr in; struct in_addr in;
char buf[40]; char buf[40];
in.s_addr = htonl(TempLong); in.s_addr = htonl(TempLong);
sprintf(buf, "%2.4g",_GMKv(filesize)); snprintf(buf, sizeof buf, "%2.4g",_GMKv(filesize));
if (filesize) if (filesize)
put_it("%s", convert_output_format(fget_string_var(FORMAT_DCC_REQUEST_FSET), put_it("%s", convert_output_format(fget_string_var(FORMAT_DCC_REQUEST_FSET),
"%s %s \"%s\" %s %s %s %d %s %s", "%s %s \"%s\" %s %s %s %d %s %s",
@@ -1625,11 +1625,11 @@ char lame_type[30];
if (xtime == 0.0) if (xtime == 0.0)
xtime = 1.0; xtime = 1.0;
temp = xfer / xtime; temp = xfer / xtime;
sprintf(lame_ultrix, "%2.4g %s", _GMKv(temp), _GMKs(temp)); snprintf(lame_ultrix, sizeof lame_ultrix, "%2.4g %s", _GMKv(temp), _GMKs(temp));
/* Cant pass %g to put_it (lame ultrix/dgux), fix suggested by sheik. */ /* Cant pass %g to put_it (lame ultrix/dgux), fix suggested by sheik. */
sprintf(lame_ultrix2, "%2.4g%s", _GMKv(xfer), _GMKs(xfer)); snprintf(lame_ultrix2, sizeof lame_ultrix2, "%2.4g%s", _GMKv(xfer), _GMKs(xfer));
sprintf(lame_ultrix3, "%2.4g", xtime); snprintf(lame_ultrix3, sizeof lame_ultrix3, "%2.4g", xtime);
sprintf(buffer, "%%s %s %%s %%s TRANSFER COMPLETE", lame_type); snprintf(buffer, sizeof buffer, "%%s %s %%s %%s TRANSFER COMPLETE", lame_type);
filename = LOCAL_COPY(n->filename); filename = LOCAL_COPY(n->filename);
p = filename; p = filename;
@@ -2505,7 +2505,7 @@ char *filename, *p;
bytes = n->bytes_read + n->bytes_sent; bytes = n->bytes_read + n->bytes_sent;
sprintf(kilobytes, "%2.4g", bytes / 1024.0 / xtime); snprintf(kilobytes, sizeof kilobytes, "%2.4g", bytes / 1024.0 / xtime);
type = s->flags & DCC_TYPES; type = s->flags & DCC_TYPES;
tdcc = s->flags & DCC_TDCC; tdcc = s->flags & DCC_TDCC;
@@ -2535,11 +2535,11 @@ char *filename, *p;
if (n->filesize == 0) if (n->filesize == 0)
size = BAR_LENGTH; size = BAR_LENGTH;
sprintf(stats, "%4.1f", perc); snprintf(stats, sizeof stats, "%4.1f", perc);
if (!get_int_var(DCC_BAR_TYPE_VAR)) if (!get_int_var(DCC_BAR_TYPE_VAR))
sprintf(spec, "%s %s%s %02d:%02d", get_bar_percent(iperc), stats, "%%", minutes, seconds); snprintf(spec, sizeof spec, "%s %s%s %02d:%02d", get_bar_percent(iperc), stats, "%%", minutes, seconds);
else else
sprintf(spec, "%s%s %02d:%02d", stats, "%%", minutes, seconds); snprintf(spec, sizeof spec, "%s%s %02d:%02d", stats, "%%", minutes, seconds);
strcpy(spec, convert_output_format(spec, NULL, NULL)); strcpy(spec, convert_output_format(spec, NULL, NULL));
} }
@@ -2717,7 +2717,7 @@ register int i = 0;
} }
strmopencat(transfer_buffer, BIG_BUFFER_SIZE, ltoa((int)perc), "% ", NULL); strmopencat(transfer_buffer, BIG_BUFFER_SIZE, ltoa((int)perc), "% ", NULL);
#if 0 #if 0
sprintf(temp_str,"%d%% ",(int) perc); snprintf(temp_str, sizeof temp_str, "%d%% ",(int) perc);
strcat(transfer_buffer,temp_str); strcat(transfer_buffer,temp_str);
#endif #endif
} }
@@ -2736,11 +2736,11 @@ register int i = 0;
/* chop(transfer_buffer, 1);*/ /* chop(transfer_buffer, 1);*/
if (fget_string_var(FORMAT_DCC_FSET)) if (fget_string_var(FORMAT_DCC_FSET))
{ {
sprintf(DCC_current_transfer_buffer, "%s", convert_output_format(fget_string_var(FORMAT_DCC_FSET), "%s", transfer_buffer)); snprintf(DCC_current_transfer_buffer, sizeof DCC_current_transfer_buffer, "%s", convert_output_format(fget_string_var(FORMAT_DCC_FSET), "%s", transfer_buffer));
chop(DCC_current_transfer_buffer, 4); chop(DCC_current_transfer_buffer, 4);
} }
else else
sprintf(DCC_current_transfer_buffer, "[%s]", transfer_buffer); snprintf(DCC_current_transfer_buffer, sizeof DCC_current_transfer_buffer, "[%s]", transfer_buffer);
} }
else else
*DCC_current_transfer_buffer = 0; *DCC_current_transfer_buffer = 0;
@@ -2825,10 +2825,10 @@ char min_rate_in[20];
char max_rate_out[20]; char max_rate_out[20];
char min_rate_out[20]; char min_rate_out[20];
sprintf(max_rate_in, "%6.2f", dcc_max_rate_in/1024.0); snprintf(max_rate_in, sizeof max_rate_in, "%6.2f", dcc_max_rate_in/1024.0);
sprintf(min_rate_in, "%6.2f", ((dcc_min_rate_in != DBL_MAX )?dcc_min_rate_in/1024.0: 0.0)); snprintf(min_rate_in, sizeof min_rate_in, "%6.2f", ((dcc_min_rate_in != DBL_MAX )?dcc_min_rate_in/1024.0: 0.0));
sprintf(max_rate_out, "%6.2f", dcc_max_rate_out/1024.0); snprintf(max_rate_out, sizeof max_rate_out, "%6.2f", dcc_max_rate_out/1024.0);
sprintf(min_rate_out, "%6.2f", ((dcc_min_rate_out != DBL_MAX) ? dcc_min_rate_out/1024.0: 0.0)); snprintf(min_rate_out, sizeof min_rate_out, "%6.2f", ((dcc_min_rate_out != DBL_MAX) ? dcc_min_rate_out/1024.0: 0.0));
if (do_hook(DCC_TRANSFER_STAT_LIST, "%lu %s %s %lu %s %s %lu %u %u %s %s %s %s", if (do_hook(DCC_TRANSFER_STAT_LIST, "%lu %s %s %lu %s %s %lu %u %u %s %s %s %s",
(unsigned long)dcc_bytes_in, max_rate_in, min_rate_in, (unsigned long)dcc_bytes_in, max_rate_in, min_rate_in,
(unsigned long)dcc_bytes_out, max_rate_out, min_rate_out, (unsigned long)dcc_bytes_out, max_rate_out, min_rate_out,
@@ -2838,8 +2838,8 @@ char min_rate_out[20];
on_off(dcc_quiet), on_off(dcc_overwrite_var))) on_off(dcc_quiet), on_off(dcc_overwrite_var)))
{ {
char in[50], out[50]; char in[50], out[50];
sprintf(in, "%3.2f%s", _GMKv(dcc_bytes_in), _GMKs(dcc_bytes_in)); snprintf(in, sizeof in, "%3.2f%s", _GMKv(dcc_bytes_in), _GMKs(dcc_bytes_in));
sprintf(out, "%3.2f%s", _GMKv(dcc_bytes_out), _GMKs(dcc_bytes_out)); snprintf(out, sizeof out, "%3.2f%s", _GMKv(dcc_bytes_out), _GMKs(dcc_bytes_out));
#ifdef ONLY_CTD_CHARS #ifdef ONLY_CTD_CHARS
put_it("%s",convert_output_format(" %G========================%K[%Cdcc transfer stats%K]%G=======================", NULL)); put_it("%s",convert_output_format(" %G========================%K[%Cdcc transfer stats%K]%G=======================", NULL));
@@ -3270,8 +3270,8 @@ unsigned long flags;
this_speed = (double)((double) sent / (double)(now- n->starttime.tv_sec)); this_speed = (double)((double) sent / (double)(now- n->starttime.tv_sec));
if (this_speed < (float)cdcc_minspeed) if (this_speed < (float)cdcc_minspeed)
{ {
sprintf(lame_ultrix, "%2.4g", (double)(sent / (now - n->starttime.tv_sec))); snprintf(lame_ultrix, sizeof lame_ultrix, "%2.4g", (double)(sent / (now - n->starttime.tv_sec)));
sprintf(lame_ultrix1,"%2.4g", (double)cdcc_minspeed); snprintf(lame_ultrix1, sizeof lame_ultrix1, "%2.4g", (double)cdcc_minspeed);
if (!last_notify || strcmp(s->server,last_notify)) if (!last_notify || strcmp(s->server,last_notify))
{ {
send_to_server("NOTICE %s :CDCC Slow dcc %s Auto Closed. Require %sKB/s got %sKB/s", s->server, dcc_types[flags]->name, lame_ultrix1, lame_ultrix); send_to_server("NOTICE %s :CDCC Slow dcc %s Auto Closed. Require %sKB/s got %sKB/s", s->server, dcc_types[flags]->name, lame_ultrix1, lame_ultrix);

View File

@@ -127,7 +127,7 @@ unsigned long old_alias_debug = alias_debug;
va_list args; va_list args;
va_start (args, format); va_start (args, format);
*debugbuf = 0; *debugbuf = 0;
vsnprintf(debugbuf, BIG_BUFFER_SIZE, format, args); vsnprintf(debugbuf, sizeof debugbuf, format, args);
va_end(args); va_end(args);
in_debug_yell = 1; in_debug_yell = 1;
if (*debugbuf && do_hook(DEBUG_LIST, "%s", debugbuf)) if (*debugbuf && do_hook(DEBUG_LIST, "%s", debugbuf))

View File

@@ -535,12 +535,12 @@ int kick_on_flood = 1;
if (!ignoretime) if (!ignoretime)
return 0; return 0;
uh = clear_server_flags(userhost); uh = clear_server_flags(userhost);
sprintf(tmp, "*!*%s", uh); snprintf(tmp, sizeof tmp, "*!*%s", uh);
old_window_display = window_display; old_window_display = window_display;
window_display = 0; window_display = 0;
ignore_nickname(tmp, ignore_type(type, strlen(type)), 0); ignore_nickname(tmp, ignore_type(type, strlen(type)), 0);
window_display = old_window_display; window_display = old_window_display;
sprintf(tmp, "%d ^IGNORE *!*%s NONE", ignoretime, uh); snprintf(tmp, sizeof tmp, "%d ^IGNORE *!*%s NONE", ignoretime, uh);
timercmd("TIMER", tmp, NULL, NULL); timercmd("TIMER", tmp, NULL, NULL);
bitchsay("Auto-ignoring %s for %d minutes [\002%s\002 flood]", nick, ignoretime/60, type); bitchsay("Auto-ignoring %s for %d minutes [\002%s\002 flood]", nick, ignoretime/60, type);
return 1; return 1;

View File

@@ -808,9 +808,9 @@ int save_formats(void)
FsetNumber *tmp; FsetNumber *tmp;
#if defined(__EMX__) || defined(WINNT) #if defined(__EMX__) || defined(WINNT)
sprintf(thefile, "%s/%s.fmt", get_string_var(CTOOLZ_DIR_VAR), version); snprintf(thefile, sizeof thefile, "%s/%s.fmt", get_string_var(CTOOLZ_DIR_VAR), version);
#else #else
sprintf(thefile, "%s/%s.formats", get_string_var(CTOOLZ_DIR_VAR), version); snprintf(thefile, sizeof thefile, "%s/%s.formats", get_string_var(CTOOLZ_DIR_VAR), version);
#endif #endif
p = expand_twiddle(thefile); p = expand_twiddle(thefile);
outfile = fopen(p, "w"); outfile = fopen(p, "w");

View File

@@ -820,14 +820,14 @@ int i = 0;
char str[80]; char str[80];
while (built_in_functions[i].func) while (built_in_functions[i].func)
{ {
sprintf(str, "_%s", built_in_functions[i].name); snprintf(str, sizeof str, "_%s", built_in_functions[i].name);
Tcl_CreateCommand(tcl_interp, lower(str), func1?func1:built_in_functions[i].func, NULL, NULL); Tcl_CreateCommand(tcl_interp, lower(str), func1?func1:built_in_functions[i].func, NULL, NULL);
i++; i++;
} }
i = 0; i = 0;
while (built_in[i].func) while (built_in[i].func)
{ {
sprintf(str, "_%c", built_in[i].name); snprintf(str, sizeof str, "_%c", built_in[i].name);
Tcl_CreateCommand(tcl_interp, str, func2?func2:built_in[i].func, NULL, NULL); Tcl_CreateCommand(tcl_interp, str, func2?func2:built_in[i].func, NULL, NULL);
i++; i++;
} }
@@ -3814,10 +3814,10 @@ BUILT_IN_FUNCTION(function_truncate, words)
float foo; float foo;
int end; int end;
sprintf(format, "%%.%de", -num-1); snprintf(format, sizeof format, "%%.%de", -num-1);
sprintf(buffer, format, value); snprintf(buffer, sizeof buffer, format, value);
foo = atof(buffer); foo = atof(buffer);
sprintf(buffer, "%f", foo); snprintf(buffer, sizeof buffer, "%f", foo);
end = strlen(buffer) - 1; end = strlen(buffer) - 1;
if (end == 0) if (end == 0)
RETURN_EMPTY; RETURN_EMPTY;
@@ -3829,8 +3829,8 @@ BUILT_IN_FUNCTION(function_truncate, words)
} }
else if (num > 0) else if (num > 0)
{ {
sprintf(format, "%%10.%dlf", num); snprintf(format, sizeof format, "%%10.%dlf", num);
sprintf(buffer, format, value); snprintf(buffer, sizeof buffer, format, value);
} }
else else
RETURN_EMPTY; RETURN_EMPTY;
@@ -5988,11 +5988,11 @@ BUILT_IN_FUNCTION(function_mask, args)
} }
#define USER (user == star ? empty_string : user) #define USER (user == star ? empty_string : user)
#define MASK1(x, y) snprintf(stuff, BIG_BUFFER_SIZE, x, y); break; #define MASK1(x, y) snprintf(stuff, sizeof stuff, x, y); break;
#define MASK2(x, y, z) snprintf(stuff, BIG_BUFFER_SIZE, x, y, z); break; #define MASK2(x, y, z) snprintf(stuff, sizeof stuff, x, y, z); break;
#define MASK3(x, y, z, a) snprintf(stuff, BIG_BUFFER_SIZE, x, y, z, a); break; #define MASK3(x, y, z, a) snprintf(stuff, sizeof stuff, x, y, z, a); break;
#define MASK4(x, y, z, a, b) snprintf(stuff, BIG_BUFFER_SIZE, x, y, z, a, b); break; #define MASK4(x, y, z, a, b) snprintf(stuff, sizeof stuff, x, y, z, a, b); break;
#define MASK5(x, y, z, a, b, c) snprintf(stuff, BIG_BUFFER_SIZE, x, y, z, a, b, c); break; #define MASK5(x, y, z, a, b, c) snprintf(stuff, sizeof stuff, x, y, z, a, b, c); break;
if (ip == 0) if (ip == 0)
switch (which) switch (which)
@@ -6765,11 +6765,11 @@ BUILT_IN_FUNCTION(function_screensize, input)
char retbuffer[50]; char retbuffer[50];
if (!my_stricmp(input, "cx")) if (!my_stricmp(input, "cx"))
sprintf(retbuffer, "%d", gui_screen_width()); snprintf(retbuffer, sizeof retbuffer, "%d", gui_screen_width());
else if (!my_stricmp(input, "cy")) else if (!my_stricmp(input, "cy"))
sprintf(retbuffer, "%d", gui_screen_height()); snprintf(retbuffer, sizeof retbuffer, "%d", gui_screen_height());
else else
sprintf(retbuffer, "%d %d", gui_screen_width(), gui_screen_height()); snprintf(retbuffer, sizeof retbuffer, "%d %d", gui_screen_width(), gui_screen_height());
RETURN_STR(retbuffer); RETURN_STR(retbuffer);
} }
@@ -7328,7 +7328,7 @@ BUILT_IN_FUNCTION(function_stat, input)
if (stat(filename, &sb) < 0) if (stat(filename, &sb) < 0)
RETURN_EMPTY; RETURN_EMPTY;
snprintf(retval, BIG_BUFFER_SIZE, snprintf(retval, sizeof retval,
"%d %d %o %d %d %d %d %lu %lu %lu %ld %ld %ld", "%d %d %o %d %d %d %d %lu %lu %lu %ld %ld %ld",
(int) sb.st_dev, /* device number */ (int) sb.st_dev, /* device number */
(int) sb.st_ino, /* Inode number */ (int) sb.st_ino, /* Inode number */

View File

@@ -110,7 +110,7 @@ void funny_print_widelist(void)
*buffer1 = '\0'; *buffer1 = '\0';
for (i = 1; i < wl_elements; i++) for (i = 1; i < wl_elements; i++)
{ {
sprintf(buffer2, "%s(%d) ", wide_list[i]->channel, snprintf(buffer2, sizeof buffer2, "%s(%d) ", wide_list[i]->channel,
wide_list[i]->users); wide_list[i]->users);
ptr = strchr(buffer1, '\0'); ptr = strchr(buffer1, '\0');
if (strlen(buffer1) + strlen(buffer2) > current_term->TI_cols - 5) if (strlen(buffer1) + strlen(buffer2) > current_term->TI_cols - 5)
@@ -149,11 +149,11 @@ void funny_list(char *from, char **ArgList)
if (last_width != get_int_var(CHANNEL_NAME_WIDTH_VAR)) if (last_width != get_int_var(CHANNEL_NAME_WIDTH_VAR))
{ {
if ((last_width = get_int_var(CHANNEL_NAME_WIDTH_VAR)) != 0) if ((last_width = get_int_var(CHANNEL_NAME_WIDTH_VAR)) != 0)
snprintf(format, 25, "%%s %%-%u.%us %%-5s %%s", /*thing_ansi,*/ snprintf(format, sizeof format, "%%s %%-%u.%us %%-5s %%s", /*thing_ansi,*/
(unsigned char) last_width, (unsigned char) last_width,
(unsigned char) last_width); (unsigned char) last_width);
else else
snprintf(format, 25, "%%s %%s %%-5s %%s"/*, thing_ansi*/); snprintf(format, sizeof format, "%%s %%s %%-5s %%s"/*, thing_ansi*/);
} }
channel = ArgList[0]; channel = ArgList[0];
user_cnt = ArgList[1]; user_cnt = ArgList[1];
@@ -333,7 +333,7 @@ int user_count = 0;
if (last_width != get_int_var(CHANNEL_NAME_WIDTH_VAR)) if (last_width != get_int_var(CHANNEL_NAME_WIDTH_VAR))
{ {
if ((last_width = get_int_var(CHANNEL_NAME_WIDTH_VAR)) != 0) if ((last_width = get_int_var(CHANNEL_NAME_WIDTH_VAR)) != 0)
sprintf(format, "%%s: %%-%u.%us %%s", snprintf(format, sizeof format, "%%s: %%-%u.%us %%s",
(unsigned char) last_width, (unsigned char) last_width,
(unsigned char) last_width); (unsigned char) last_width);
else else

View File

@@ -355,7 +355,7 @@ int gtkprintf(char *format, ...)
char putbuf[400]; char putbuf[400];
va_start(args, format); va_start(args, format);
vsprintf(putbuf, format, args); vsnprintf(putbuf, sizeof putbuf, format, args);
va_end(args); va_end(args);
if(output_screen && output_screen->pipe[1]) if(output_screen && output_screen->pipe[1])
@@ -1085,7 +1085,7 @@ void select_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event
gtk_widget_set_sensitive(gtkprop->entryfield, TRUE); gtk_widget_set_sensitive(gtkprop->entryfield, TRUE);
gtk_widget_set_sensitive(gtkprop->check, FALSE); gtk_widget_set_sensitive(gtkprop->check, FALSE);
sprintf(szBuffer, "%d", get_int_var(row)); snprintf(szBuffer, sizeof szBuffer, "%d", get_int_var(row));
gtk_entry_set_text((GtkEntry *)gtkprop->entryfield, szBuffer); gtk_entry_set_text((GtkEntry *)gtkprop->entryfield, szBuffer);
break; break;
} }
@@ -1130,7 +1130,7 @@ void select_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event
gtk_widget_set_sensitive(gtkprop->entryfield, TRUE); gtk_widget_set_sensitive(gtkprop->entryfield, TRUE);
gtk_widget_set_sensitive(gtkprop->check, FALSE); gtk_widget_set_sensitive(gtkprop->check, FALSE);
sprintf(szBuffer, "%d", get_cset_int_var(chan->csets, row)); snprintf(szBuffer, sizeof szBuffer, "%d", get_cset_int_var(chan->csets, row));
gtk_entry_set_text((GtkEntry *)gtkprop->entryfield, szBuffer); gtk_entry_set_text((GtkEntry *)gtkprop->entryfield, szBuffer);
break; break;
} }

View File

@@ -196,7 +196,7 @@ static void help_prompt (char *name, char *line)
{ {
char tmp[BIG_BUFFER_SIZE + 1]; char tmp[BIG_BUFFER_SIZE + 1];
sprintf(tmp, "%s%sHelp? ", help_topic_list, snprintf(tmp, sizeof tmp, "%s%sHelp? ", help_topic_list,
*help_topic_list ? space : empty_string); *help_topic_list ? space : empty_string);
if (!dumb_mode) if (!dumb_mode)
add_wait_prompt(tmp, help_me, help_topic_list, add_wait_prompt(tmp, help_me, help_topic_list,
@@ -256,7 +256,7 @@ static void help_pause_add_line (char *format, ...)
va_list args; va_list args;
va_start (args, format); va_start (args, format);
vsnprintf(buf, BIG_BUFFER_SIZE - 1, format, args); vsnprintf(buf, sizeof buf, format, args);
va_end (args); va_end (args);
if ((help_paused_lines + 1) >= HELP_PAUSED_LINES_MAX) if ((help_paused_lines + 1) >= HELP_PAUSED_LINES_MAX)
ircpanic("help_pause_add_line: would overflow the buffer"); ircpanic("help_pause_add_line: would overflow the buffer");
@@ -310,7 +310,7 @@ static void help_show_paused_topic (char *name, char *line)
{ {
char buf[BIG_BUFFER_SIZE]; char buf[BIG_BUFFER_SIZE];
sprintf(buf, "%s%sHelp? ", name, (name && *name) ? space : empty_string); snprintf(buf, sizeof buf, "%s%sHelp? ", name, (name && *name) ? space : empty_string);
if (!dumb_mode) if (!dumb_mode)
add_wait_prompt(buf, help_me, name, WAIT_PROMPT_LINE, 1); add_wait_prompt(buf, help_me, name, WAIT_PROMPT_LINE, 1);
} }
@@ -349,7 +349,7 @@ static void help_me (char *topics, char *args)
strcpy(help_topic_list, topics); strcpy(help_topic_list, topics);
ptr = get_string_var(HELP_PATH_VAR); ptr = get_string_var(HELP_PATH_VAR);
sprintf(path, "%s/%s", ptr, topics); snprintf(path, sizeof path, "%s/%s", ptr, topics);
for (ptr = path; (ptr = strchr(ptr, ' '));) for (ptr = path; (ptr = strchr(ptr, ' '));)
*ptr = '/'; *ptr = '/';
@@ -380,7 +380,7 @@ static void help_me (char *topics, char *args)
else else
*help_topic_list = '\0'; *help_topic_list = '\0';
sprintf(tmp, "%s%sHelp? ", help_topic_list, *help_topic_list ? space : empty_string); snprintf(tmp, sizeof tmp, "%s%sHelp? ", help_topic_list, *help_topic_list ? space : empty_string);
if (!dumb_mode) if (!dumb_mode)
add_wait_prompt(tmp, help_me, help_topic_list, WAIT_PROMPT_LINE, 1); add_wait_prompt(tmp, help_me, help_topic_list, WAIT_PROMPT_LINE, 1);
@@ -525,7 +525,7 @@ switch (entries)
set_help_screen(NULL); set_help_screen(NULL);
break; break;
} }
sprintf(tmp, "%s%sHelp? ", help_topic_list, *help_topic_list ? space : empty_string); snprintf(tmp, sizeof tmp, "%s%sHelp? ", help_topic_list, *help_topic_list ? space : empty_string);
if (!dumb_mode) if (!dumb_mode)
add_wait_prompt(tmp, help_me, help_topic_list, WAIT_PROMPT_LINE, 1); add_wait_prompt(tmp, help_me, help_topic_list, WAIT_PROMPT_LINE, 1);
@@ -541,7 +541,7 @@ switch (entries)
} }
case 1: case 1:
{ {
sprintf(tmp, "%s/%s", path, g.gl_pathv[0]); snprintf(tmp, sizeof tmp, "%s/%s", path, g.gl_pathv[0]);
stat(tmp, &stat_buf); stat(tmp, &stat_buf);
if (stat_buf.st_mode & S_IFDIR) if (stat_buf.st_mode & S_IFDIR)
{ {
@@ -737,7 +737,7 @@ static void help_put_it (const char *topic, const char *format, ...)
{ {
va_list args; va_list args;
va_start (args, format); va_start (args, format);
vsnprintf(putbuf, BIG_BUFFER_SIZE * 3, format, args); vsnprintf(putbuf, sizeof putbuf, format, args);
va_end(args); va_end(args);
if (do_hook(HELP_LIST, "%s %s", topic, putbuf)) if (do_hook(HELP_LIST, "%s %s", topic, putbuf))

View File

@@ -767,7 +767,7 @@ static int show_numeric_list (int numeric)
if (numeric) if (numeric)
{ {
sprintf(buf, "%3.3u", numeric); snprintf(buf, sizeof buf, "%3.3u", numeric);
if ((tmp = find_numeric_list(numeric))) if ((tmp = find_numeric_list(numeric)))
{ {
for (list = tmp->list; list; list = list->next, cnt++) for (list = tmp->list; list; list = list->next, cnt++)
@@ -888,7 +888,7 @@ int BX_do_hook (int which, char *format, ...)
{ {
va_list args; va_list args;
va_start (args, format); va_start (args, format);
vsnprintf(buffer, BIG_BUFFER_SIZE * 5, format, args); vsnprintf(buffer, sizeof buffer, format, args);
va_end(args); va_end(args);
} }
else else

View File

@@ -2521,9 +2521,9 @@ char buffer[BIG_BUFFER_SIZE+1];
if (old && *old) if (old && *old)
{ {
if (strchr(completes[0], ' ')) if (strchr(completes[0], ' '))
sprintf(buffer, "%s%s\"%s\"", inp, space, i ? completes[0] : old); snprintf(buffer, sizeof buffer, "%s%s\"%s\"", inp, space, i ? completes[0] : old);
else else
sprintf(buffer, "%s%s%s", inp, space, i ? completes[0] : old); snprintf(buffer, sizeof buffer, "%s%s%s", inp, space, i ? completes[0] : old);
} }
else else
strcpy(buffer, completes[0]); strcpy(buffer, completes[0]);
@@ -2684,13 +2684,13 @@ do_more_tab:
else if (suggested && *suggested) else if (suggested && *suggested)
p = m_3dup("/", suggested, ""); p = m_3dup("/", suggested, "");
if (type == TABKEY_COMPLETION) if (type == TABKEY_COMPLETION)
snprintf(buffer, BIG_BUFFER_SIZE, "%s %s%s%s ", (p && *p == '/') ? p : "/m", get, (p && (*p != '/'))?space:empty_string, (p && (*p != '/'))?p:empty_string); snprintf(buffer, sizeof buffer, "%s %s%s%s ", (p && *p == '/') ? p : "/m", get, (p && (*p != '/'))?space:empty_string, (p && (*p != '/'))?p:empty_string);
else else
{ {
if (wcount == 1 && got_space) if (wcount == 1 && got_space)
snprintf(buffer, BIG_BUFFER_SIZE, "%s %s ", get_input(), get); snprintf(buffer, sizeof buffer, "%s %s ", get_input(), get);
else else
snprintf(buffer, BIG_BUFFER_SIZE, "%s%s%s ", p ? p : get, p ? space : empty_string, p ? get : empty_string); snprintf(buffer, sizeof buffer, "%s%s%s ", p ? p : get, p ? space : empty_string, p ? get : empty_string);
} }
if ((type == CDCC_COMPLETION || type == LOAD_COMPLETION || type == FILE_COMPLETION || type == DCC_COMPLETION) || ((type == EXEC_COMPLETION) && (get[strlen(get)-1] == '/'))) if ((type == CDCC_COMPLETION || type == LOAD_COMPLETION || type == FILE_COMPLETION || type == DCC_COMPLETION) || ((type == EXEC_COMPLETION) && (get[strlen(get)-1] == '/')))
chop(buffer, 1); chop(buffer, 1);

View File

@@ -1398,7 +1398,7 @@ FILE *t;
if (!do_check_pid) if (!do_check_pid)
return; return;
p = expand_twiddle(DEFAULT_CTOOLZ_DIR); p = expand_twiddle(DEFAULT_CTOOLZ_DIR);
snprintf(pidfile, 79, "%s/pid.%s", p, nickname); snprintf(pidfile, sizeof pidfile, "%s/pid.%s", p, nickname);
if ((t = fopen(pidfile, "r"))) if ((t = fopen(pidfile, "r")))
{ {
char buffer[80]; char buffer[80];
@@ -1424,7 +1424,7 @@ FILE *t;
if (!do_check_pid) if (!do_check_pid)
return; return;
p = expand_twiddle(DEFAULT_CTOOLZ_DIR); p = expand_twiddle(DEFAULT_CTOOLZ_DIR);
snprintf(pidfile, 79, "%s/pid.%s", p, nickname); snprintf(pidfile, sizeof pidfile, "%s/pid.%s", p, nickname);
if ((t = fopen(pidfile, "r"))) if ((t = fopen(pidfile, "r")))
{ {
#if !defined(__EMX__) && !defined(WINNT) && !defined(GUI) #if !defined(__EMX__) && !defined(WINNT) && !defined(GUI)
@@ -1434,7 +1434,7 @@ FILE *t;
if (save_ipc != -1 && (s = get_socket(save_ipc))) if (save_ipc != -1 && (s = get_socket(save_ipc)))
{ {
char buf[500]; char buf[500];
sprintf(buf, s->server, s->port); snprintf(buf, sizeof buf, s->server, s->port);
unlink(buf); unlink(buf);
} }
#endif #endif
@@ -1649,7 +1649,7 @@ int main(int argc, char *argv[], char *envp[])
#ifdef CLOAKED #ifdef CLOAKED
initsetproctitle(argc, argv, envp); initsetproctitle(argc, argv, envp);
sprintf(proctitlestr, CLOAKED); snprintf(proctitlestr, sizeof proctitlestr, CLOAKED);
setproctitle("%s", proctitlestr); setproctitle("%s", proctitlestr);
#endif #endif

View File

@@ -338,7 +338,7 @@ char *BX_malloc_sprintf (char **to, const char *pattern, ...)
{ {
va_list args; va_list args;
va_start (args, pattern); va_start (args, pattern);
vsnprintf(booya, BIG_BUFFER_SIZE * 3, pattern, args); vsnprintf(booya, sizeof booya, pattern, args);
va_end(args); va_end(args);
} }
malloc_strcpy(to, booya); malloc_strcpy(to, booya);
@@ -355,7 +355,7 @@ char *BX_m_sprintf (const char *pattern, ...)
{ {
va_list args; va_list args;
va_start (args, pattern); va_start (args, pattern);
vsnprintf(booya, BIG_BUFFER_SIZE * 3, pattern, args); vsnprintf(booya, sizeof booya, pattern, args);
va_end(args); va_end(args);
} }
return m_strdup(booya); return m_strdup(booya);
@@ -1320,7 +1320,7 @@ void BX_ircpanic (char *format, ...)
{ {
va_list arglist; va_list arglist;
va_start(arglist, format); va_start(arglist, format);
vsnprintf(buffer, BIG_BUFFER_SIZE, format, arglist); vsnprintf(buffer, sizeof buffer, format, arglist);
va_end(arglist); va_end(arglist);
} }
@@ -2780,7 +2780,7 @@ char *BX_strpcat (char *source, const char *format, ...)
char buffer[BIG_BUFFER_SIZE + 1]; char buffer[BIG_BUFFER_SIZE + 1];
va_start(args, format); va_start(args, format);
vsnprintf(buffer, BIG_BUFFER_SIZE, format, args); vsnprintf(buffer, sizeof buffer, format, args);
va_end(args); va_end(args);
strcat(source, buffer); strcat(source, buffer);
@@ -2793,7 +2793,7 @@ char * BX_strmpcat (char *source, size_t siz, const char *format, ...)
char buffer[BIG_BUFFER_SIZE + 1]; char buffer[BIG_BUFFER_SIZE + 1];
va_start(args, format); va_start(args, format);
vsnprintf(buffer, BIG_BUFFER_SIZE, format, args); vsnprintf(buffer, sizeof buffer, format, args);
va_end(args); va_end(args);
strmcat(source, buffer, siz); strmcat(source, buffer, siz);
@@ -2858,7 +2858,7 @@ char *BX_stripdev(char *ttynam)
if (!strncmp(ttynam, "/dev/pts", 8) && ttynam[8] >= '0' && ttynam[8] <= '9') if (!strncmp(ttynam, "/dev/pts", 8) && ttynam[8] >= '0' && ttynam[8] <= '9')
{ {
static char b[13]; static char b[13];
sprintf(b, "pts/%d", atoi(ttynam + 8)); snprintf(b, sizeof b, "pts/%d", atoi(ttynam + 8));
return b; return b;
} }
#endif /* SVR4 */ #endif /* SVR4 */
@@ -3066,8 +3066,7 @@ char buffer[40];
static char buff[40]; static char buff[40];
char *s = buff; char *s = buff;
int i = 0, j = 0, len; int i = 0, j = 0, len;
sprintf(buffer, "%ld", val); len = snprintf(buffer, sizeof buffer, "%ld", val);
len = strlen(buffer);
for (i = len % 3; i > 0; i--) for (i = len % 3; i > 0; i--)
*s++ = buffer[j++]; *s++ = buffer[j++];
if (len > 3 && len % 3) if (len > 3 && len % 3)
@@ -3089,8 +3088,7 @@ char buffer[40];
static char buff[40]; static char buff[40];
char *s = buff; char *s = buff;
int i = 0, j = 0, len; int i = 0, j = 0, len;
sprintf(buffer, "%lu", val); len = snprintf(buffer, sizeof buffer, "%lu", val);
len = strlen(buffer);
for (i = len % 3; i > 0; i--) for (i = len % 3; i > 0; i--)
*s++ = buffer[j++]; *s++ = buffer[j++];
if (len > 3 && len % 3) if (len > 3 && len % 3)

View File

@@ -502,7 +502,7 @@ static void show_binding (int meta, uc c)
if (meta < 1 || meta > MAX_META) if (meta < 1 || meta > MAX_META)
meta = 0; meta = 0;
else else
sprintf(meta_str, "META%d-", meta); snprintf(meta_str, sizeof meta_str, "META%d-", meta);
if (keys[meta] && KEY(meta, c)) if (keys[meta] && KEY(meta, c))
{ {
@@ -560,7 +560,7 @@ void save_bindings (FILE *fp, int do_all)
for (meta = 0; meta <= MAX_META; meta++) for (meta = 0; meta <= MAX_META; meta++)
{ {
if (meta != 0) if (meta != 0)
sprintf(meta_str, "META%d-", meta); snprintf(meta_str, sizeof meta_str, "META%d-", meta);
for (j = 0; j < charsize; j++) for (j = 0; j < charsize; j++)
{ {
@@ -1283,8 +1283,8 @@ static char keyloc[80];
if (KEY(i, j) && KEY(i, j)->key_index == loc) if (KEY(i, j) && KEY(i, j)->key_index == loc)
{ {
if (i > 0) if (i > 0)
sprintf(meta_str, "META%d-", i); snprintf(meta_str, sizeof meta_str, "META%d-", i);
sprintf(keyloc, "%s%s", meta_str, display_key(j)); snprintf(keyloc, sizeof keyloc, "%s%s", meta_str, display_key(j));
return keyloc; return keyloc;
} }
} }

View File

@@ -465,7 +465,6 @@ BUILT_IN_COMMAND(lastlog)
if (match) if (match)
{ {
blah = (char *) alloca(strlen(match)+4); blah = (char *) alloca(strlen(match)+4);
sprintf(blah, "*%s*", match); sprintf(blah, "*%s*", match);
} }
@@ -594,7 +593,7 @@ int logmsg(unsigned long log_type, char *from, int flag, char *format, ...)
{ {
va_list ap; va_list ap;
va_start(ap, format); va_start(ap, format);
vsnprintf(msglog_buffer, BIG_BUFFER_SIZE, format, ap); vsnprintf(msglog_buffer, sizeof msglog_buffer, format, ap);
va_end(ap); va_end(ap);
} }

View File

@@ -203,7 +203,7 @@ static int i = 0;
if (i == 4) if (i == 4)
i = 0; i = 0;
} }
sprintf(ret_str, "%c", this[i]); snprintf(ret_str, sizeof ret_str, "%c", this[i]);
return ret_str; return ret_str;
#else #else
@@ -216,7 +216,7 @@ static int i = 0;
reset_display_target(); reset_display_target();
if (i == 4) if (i == 4)
i = 0; i = 0;
sprintf(ret_str, "%c", this[i++]); snprintf(ret_str, sizeof ret_str, "%c", this[i++]);
case 1: case 1:
if (!*ret_str) if (!*ret_str)
return NULL; return NULL;
@@ -246,7 +246,7 @@ static int i = 0;
} }
old_count = count; old_count = count;
sprintf(ret_str, "%d", old_count); snprintf(ret_str, sizeof ret_str, "%d", old_count);
return ret_str; return ret_str;
#else #else
FILE *mail; FILE *mail;
@@ -277,7 +277,7 @@ static int i = 0;
} }
old_count = count; old_count = count;
sprintf(ret_str, "%d", old_count); snprintf(ret_str, sizeof ret_str, "%d", old_count);
} }
case 1: case 1:
if (*ret_str) if (*ret_str)

View File

@@ -149,7 +149,7 @@ char *convert_time (time_t ltime)
ltime = (ltime - minutes) / 60; ltime = (ltime - minutes) / 60;
hours = ltime % 24; hours = ltime % 24;
days = (ltime - hours) / 24; days = (ltime - hours) / 24;
sprintf(buffer, "%2lud %2luh %2lum %2lus", days, hours, minutes, seconds); snprintf(buffer, sizeof buffer, "%2lud %2luh %2lum %2lus", days, hours, minutes, seconds);
return(*buffer ? buffer : empty_string); return(*buffer ? buffer : empty_string);
} }
@@ -1258,12 +1258,12 @@ FILE *f;
strftime(s1, 30, "%I:%M%p", localtime(&t)); strftime(s1, 30, "%I:%M%p", localtime(&t));
chname=va_arg(va,char *); chname=va_arg(va,char *);
format=va_arg(va,char *); format=va_arg(va,char *);
vsprintf(s,format,va); vsnprintf(s, sizeof s, format, va);
if (!*s) if (!*s)
strcpy(s2,empty_string); strcpy(s2,empty_string);
else else
sprintf(s2,"[%s] %s",s1,s); snprintf(s2, sizeof s2, "[%s] %s",s1,s);
if (chname && *chname =='*') if (chname && *chname =='*')
{ {
@@ -1279,11 +1279,10 @@ FILE *f;
int rename_file(char *old_file, char **new_file) int rename_file(char *old_file, char **new_file)
{ {
FILE *fp; FILE *fp;
char *c, *tmp = NULL; char *tmp = NULL;
char buffer[BIG_BUFFER_SIZE]; char buffer[BIG_BUFFER_SIZE], c[10];
c = alloca(10); snprintf(c, sizeof c, "%03i.", getrandom(0, 999));
sprintf(c, "%03i.", getrandom(0, 999));
if (get_string_var(DCC_DLDIR_VAR)) if (get_string_var(DCC_DLDIR_VAR))
malloc_sprintf(&tmp, "%s/%s", get_string_var(DCC_DLDIR_VAR), c); malloc_sprintf(&tmp, "%s/%s", get_string_var(DCC_DLDIR_VAR), c);
else else
@@ -1294,7 +1293,7 @@ int rename_file(char *old_file, char **new_file)
while ((fp = fopen(tmp, "r")) != NULL) while ((fp = fopen(tmp, "r")) != NULL)
{ {
fclose(fp); fclose(fp);
sprintf(c, "%03i.", getrandom(0, 999)); snprintf(c, sizeof c, "%03i.", getrandom(0, 999));
if (get_string_var(DCC_DLDIR_VAR)) if (get_string_var(DCC_DLDIR_VAR))
malloc_sprintf(&tmp, "%s/%s", get_string_var(DCC_DLDIR_VAR), c); malloc_sprintf(&tmp, "%s/%s", get_string_var(DCC_DLDIR_VAR), c);
else else
@@ -1675,7 +1674,7 @@ BUILT_IN_COMMAND(ChanWallOp)
new_free(&channel); new_free(&channel);
} }
set_display_target(channel, LOG_WALL); set_display_target(channel, LOG_WALL);
sprintf(buffer, "[\002BX-Wall\002/\002%s\002] %s", channel, args); snprintf(buffer, sizeof buffer, "[\002BX-Wall\002/\002%s\002] %s", channel, args);
if (ver >= Server_u2_10 || enable_all) if (ver >= Server_u2_10 || enable_all)
{ {
send_to_server(enable_all?"NOTICE @%s :%s":"WALLCHOPS %s :%s", channel, buffer); send_to_server(enable_all?"NOTICE @%s :%s":"WALLCHOPS %s :%s", channel, buffer);
@@ -1893,9 +1892,9 @@ struct in_addr ip;
{ {
int i; int i;
if (rptr->nick && rptr->user) if (rptr->nick && rptr->user)
sprintf(buffer, "%s!%s@%s ", n, u, h); snprintf(buffer, sizeof buffer, "%s!%s@%s ", n, u, h);
else else
sprintf(buffer, "%s ", h); snprintf(buffer, sizeof buffer, "%s ", h);
for (i = 0; rptr->re_he.h_addr_list[i].s_addr; i++) for (i = 0; rptr->re_he.h_addr_list[i].s_addr; i++)
{ {
bcopy(&rptr->re_he.h_addr_list[i], (char *)&ip, sizeof(ip)); bcopy(&rptr->re_he.h_addr_list[i], (char *)&ip, sizeof(ip));
@@ -1933,9 +1932,9 @@ void print_ns_fail(struct reslist *rptr)
{ {
char buffer[BIG_BUFFER_SIZE]; char buffer[BIG_BUFFER_SIZE];
if (rptr->nick && rptr->user) if (rptr->nick && rptr->user)
sprintf(buffer, "%s!%s@%s ", rptr->nick, rptr->user, rptr->host); snprintf(buffer, sizeof buffer, "%s!%s@%s ", rptr->nick, rptr->user, rptr->host);
else else
sprintf(buffer, "%s ", rptr->host); snprintf(buffer, sizeof buffer, "%s ", rptr->host);
parse_line("NSLOOKUP", rptr->command, buffer, 0, 0, 1); parse_line("NSLOOKUP", rptr->command, buffer, 0, 0, 1);
return; return;
} }
@@ -2613,7 +2612,7 @@ static int do_query_number(struct resinfo *resi, char *numb, register struct res
* name to get more names to query!. * name to get more names to query!.
*/ */
cp = (unsigned char *)numb; cp = (unsigned char *)numb;
(void)sprintf(ipbuf,"%u.%u.%u.%u.in-addr.arpa.", (void)snprintf(ipbuf, sizeof ipbuf, "%u.%u.%u.%u.in-addr.arpa.",
(unsigned int)(cp[3]), (unsigned int)(cp[2]), (unsigned int)(cp[3]), (unsigned int)(cp[2]),
(unsigned int)(cp[1]), (unsigned int)(cp[0])); (unsigned int)(cp[1]), (unsigned int)(cp[0]));
@@ -3932,16 +3931,16 @@ void userhost_ignore (UserhostItem *stuff, char *nick1, char *args)
host = stuff->host; nick = stuff->nick; host = stuff->host; nick = stuff->nick;
} }
if (!arg || !*arg || !my_stricmp(arg, "+HOST")) if (!arg || !*arg || !my_stricmp(arg, "+HOST"))
sprintf(ignorebuf, "*!*@%s ALL -CRAP -PUBLIC", cluster(host)); snprintf(ignorebuf, sizeof ignorebuf, "*!*@%s ALL -CRAP -PUBLIC", cluster(host));
else if (!my_stricmp(arg, "+USER")) else if (!my_stricmp(arg, "+USER"))
sprintf(ignorebuf, "*%s@%s ALL -CRAP -PUBLIC", user, cluster(host)); snprintf(ignorebuf, sizeof ignorebuf, "*%s@%s ALL -CRAP -PUBLIC", user, cluster(host));
else if (!my_stricmp(arg, "-USER") || !my_stricmp(arg, "-HOST")) else if (!my_stricmp(arg, "-USER") || !my_stricmp(arg, "-HOST"))
{ {
int found = 0; int found = 0;
if (!my_stricmp(arg, "-HOST")) if (!my_stricmp(arg, "-HOST"))
sprintf(ignorebuf, "*!*@%s", cluster(host)); snprintf(ignorebuf, sizeof ignorebuf, "*!*@%s", cluster(host));
else else
sprintf(ignorebuf, "%s!%s@%s", nick, user, host); snprintf(ignorebuf, sizeof ignorebuf, "%s!%s@%s", nick, user, host);
igptr = ignored_nicks; igptr = ignored_nicks;
while (igptr != NULL) while (igptr != NULL)
{ {
@@ -3949,7 +3948,7 @@ void userhost_ignore (UserhostItem *stuff, char *nick1, char *args)
if (wild_match(igptr->nick, ignorebuf) || if (wild_match(igptr->nick, ignorebuf) ||
wild_match(nick, igptr->nick)) wild_match(nick, igptr->nick))
{ {
sprintf(ignorebuf, "%s NONE", igptr->nick); snprintf(ignorebuf, sizeof ignorebuf, "%s NONE", igptr->nick);
old_window_display = window_display; old_window_display = window_display;
window_display = 0; window_display = 0;
ignore(NULL, ignorebuf, ignorebuf, NULL); ignore(NULL, ignorebuf, ignorebuf, NULL);
@@ -3969,7 +3968,7 @@ void userhost_ignore (UserhostItem *stuff, char *nick1, char *args)
if ((arg = next_arg(args, &args))) if ((arg = next_arg(args, &args)))
{ {
char tmp[BIG_BUFFER_SIZE+1]; char tmp[BIG_BUFFER_SIZE+1];
sprintf(tmp, "%s ^IGNORE %s NONE", arg, ignorebuf); snprintf(tmp, sizeof tmp, "%s ^IGNORE %s NONE", arg, ignorebuf);
timercmd("TIMER", tmp, NULL, NULL); timercmd("TIMER", tmp, NULL, NULL);
} }
window_display = old_window_display; window_display = old_window_display;
@@ -4241,7 +4240,7 @@ int count = 0,
sortl = sorted_nicklist(chan, sorted); sortl = sorted_nicklist(chan, sorted);
for (nicks = sortl; nicks; nicks = nicks->next) for (nicks = sortl; nicks; nicks = nicks->next)
{ {
sprintf(modebuf, "%s!%s", nicks->nick, snprintf(modebuf, sizeof modebuf, "%s!%s", nicks->nick,
nicks->host ? nicks->host : "<UNKNOWN@UNKNOWN>"); nicks->host ? nicks->host : "<UNKNOWN@UNKNOWN>");
if (msg == 7 && nicks->ip) if (msg == 7 && nicks->ip)
{ {
@@ -4947,7 +4946,7 @@ static char buffer[IRCD_BUFFER_SIZE+1];
if (!chan) if (!chan)
return NULL; return NULL;
if (*chan != '#' && *chan != '&' && *chan != '+' && *chan != '!') if (*chan != '#' && *chan != '&' && *chan != '+' && *chan != '!')
snprintf(buffer, IRCD_BUFFER_SIZE-2, "#%s", chan); snprintf(buffer, sizeof buffer, "#%s", chan);
else else
strlcpy(buffer, chan, sizeof buffer); strlcpy(buffer, chan, sizeof buffer);
return buffer; return buffer;

View File

@@ -88,7 +88,7 @@ char * check_channel_type (char *channel)
if (*channel != '!' || strlen(channel) < 6) if (*channel != '!' || strlen(channel) < 6)
return channel; return channel;
sprintf(new_channel_format, "[%.6s] %s", channel, channel + 6); snprintf(new_channel_format, sizeof new_channel_format, "[%.6s] %s", channel, channel + 6);
return new_channel_format; return new_channel_format;
} }

View File

@@ -752,11 +752,12 @@ extern char *BX_host_to_ip (const char *host)
struct hostent *hep = gethostbyname(host); struct hostent *hep = gethostbyname(host);
static char ip[30]; static char ip[30];
return (hep ? sprintf(ip,"%u.%u.%u.%u", hep->h_addr[0] & 0xff, return (hep ? snprintf(ip, sizeof ip, "%u.%u.%u.%u",
hep->h_addr[1] & 0xff, hep->h_addr[0] & 0xff,
hep->h_addr[2] & 0xff, hep->h_addr[1] & 0xff,
hep->h_addr[3] & 0xff), hep->h_addr[2] & 0xff,
ip : empty_string); hep->h_addr[3] & 0xff),
ip : empty_string);
} }
extern char *BX_ip_to_host (const char *ip) extern char *BX_ip_to_host (const char *ip)

View File

@@ -824,7 +824,7 @@ void load_scripts(void)
never_connected = 0; never_connected = 0;
#if !defined(WINNT) && !defined(__EMX__) #if !defined(WINNT) && !defined(__EMX__)
window_display = 0; window_display = 0;
sprintf(buffer, "%s/bxglobal", SCRIPT_PATH); snprintf(buffer, sizeof buffer, "%s/bxglobal", SCRIPT_PATH);
loading_global = 1; loading_global = 1;
load("LOAD", buffer, empty_string, NULL); load("LOAD", buffer, empty_string, NULL);
loading_global = 0; loading_global = 0;

View File

@@ -418,7 +418,7 @@ void notify_userhost_dispatch (UserhostItem *stuff, char *nick, char *text)
{ {
char userhost[BIG_BUFFER_SIZE + 1]; char userhost[BIG_BUFFER_SIZE + 1];
snprintf(userhost, BIG_BUFFER_SIZE, "%s@%s", stuff->user, stuff->host); snprintf(userhost, sizeof userhost, "%s@%s", stuff->user, stuff->host);
notify_userhost_reply(stuff->nick, userhost); notify_userhost_reply(stuff->nick, userhost);
} }

View File

@@ -79,7 +79,7 @@ char *numeric_banner(void)
static char thing[4]; static char thing[4];
if (!get_int_var(SHOW_NUMERICS_VAR)) if (!get_int_var(SHOW_NUMERICS_VAR))
return (thing_ansi?thing_ansi:empty_string); return (thing_ansi?thing_ansi:empty_string);
sprintf(thing, "%3.3u", -current_numeric); snprintf(thing, sizeof thing, "%3.3u", -current_numeric);
return (thing); return (thing);
} }

View File

@@ -837,7 +837,7 @@ static void p_pong(char *from, char **ArgList)
timethen.tv_sec = my_atol(ArgList[1]+3); timethen.tv_sec = my_atol(ArgList[1]+3);
#endif #endif
get_time(&timenow); get_time(&timenow);
sprintf(buff, "%2.4f", BX_time_diff(timethen, timenow)); snprintf(buff, sizeof buff, "%2.4f", BX_time_diff(timethen, timenow));
put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff)); put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff));
clear_server_sping(from_server, ArgList[0]); clear_server_sping(from_server, ArgList[0]);
} }
@@ -850,10 +850,10 @@ static void p_pong(char *from, char **ArgList)
#ifdef HAVE_GETTIMEOFDAY #ifdef HAVE_GETTIMEOFDAY
struct timeval timenow = {0}; struct timeval timenow = {0};
get_time(&timenow); get_time(&timenow);
sprintf(buff, "%2.4f", BX_time_diff(tmp->in_sping, timenow)); snprintf(buff, sizeof buff, "%2.4f", BX_time_diff(tmp->in_sping, timenow));
put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff)); put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff));
#else #else
sprintf(buff, "%2ld.x", now - tmp->in_sping); snprintf(buff, sizeof buff, "%2ld.x", now - tmp->in_sping);
put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff)); put_it("%s", convert_output_format("$G Server pong from %W$0%n $1 seconds", "%s %s", ArgList[0], buff));
#endif #endif
clear_server_sping(from_server, ArgList[0]); clear_server_sping(from_server, ArgList[0]);
@@ -960,10 +960,11 @@ void add_user_who (WhoEntry *w, char *from, char **ArgList)
char *userhost; char *userhost;
ChannelList *chan; ChannelList *chan;
int op = 0, voice = 0; int op = 0, voice = 0;
size_t userhost_size = strlen(ArgList[1]) + strlen(ArgList[2]) + 2;
/* Obviously this is safe. */ /* Obviously this is safe. */
userhost = alloca(strlen(ArgList[1]) + strlen(ArgList[2]) + 2); userhost = alloca(userhost_size);
sprintf(userhost, "%s@%s", ArgList[1], ArgList[2]); snprintf(userhost, userhost_size, "%s@%s", ArgList[1], ArgList[2]);
voice = (strchr(ArgList[5], '+') != NULL); voice = (strchr(ArgList[5], '+') != NULL);
op = (strchr(ArgList[5], '@') != NULL); op = (strchr(ArgList[5], '@') != NULL);
chan = add_to_channel(ArgList[0], ArgList[4], from_server, op, voice, userhost, ArgList[3], ArgList[5], 0, ArgList[6] ? my_atol(ArgList[6]) : 0); chan = add_to_channel(ArgList[0], ArgList[4], from_server, op, voice, userhost, ArgList[3], ArgList[5], 0, ArgList[6] ? my_atol(ArgList[6]) : 0);
@@ -1286,7 +1287,7 @@ static void p_kill(char *from, char **ArgList)
} }
port = get_server_port(from_server); port = get_server_port(from_server);
snprintf(sc, 19, "+%i %d", from_server, port); snprintf(sc, sizeof sc, "+%i %d", from_server, port);
localkill = !serverkill && ArgList[1] && localkill = !serverkill && ArgList[1] &&
strstr(ArgList[1], get_server_name(from_server)); strstr(ArgList[1], get_server_name(from_server));
@@ -1312,7 +1313,7 @@ static void p_kill(char *from, char **ArgList)
int i = from_server + 1; int i = from_server + 1;
if (i >= server_list_size()) if (i >= server_list_size())
i = 0; i = 0;
snprintf(sc, 19, "+%i", i); snprintf(sc, sizeof sc, "+%i", i);
from_server = -1; from_server = -1;
} }
if (do_hook(DISCONNECT_LIST,"Killed by %s (%s)",from, if (do_hook(DISCONNECT_LIST,"Killed by %s (%s)",from,

View File

@@ -328,7 +328,7 @@ void aprintf(char *format, ...) {
USHORT i, o; USHORT i, o;
va_start(args, format); va_start(args, format);
vsprintf(putbuf, format, args); vsnprintf(putbuf sizeof putbuf, format, args);
va_end(args); va_end(args);
i = o = 0; i = o = 0;
@@ -386,7 +386,7 @@ MRESULT EXPENTRY FontDlgProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
{ {
if(fonts[i].lAveCharWidth != 5) if(fonts[i].lAveCharWidth != 5)
{ {
sprintf(buf, "%s %ux%u", fonts[i].szFacename, (unsigned int)fonts[i].lMaxBaselineExt, (unsigned int)fonts[i].lAveCharWidth); snprintf(buf, sizeof buf, "%s %ux%u", fonts[i].szFacename, (unsigned int)fonts[i].lMaxBaselineExt, (unsigned int)fonts[i].lAveCharWidth);
WinSendMsg(WinWindowFromID(hwnd, 101), WinSendMsg(WinWindowFromID(hwnd, 101),
LM_INSERTITEM, LM_INSERTITEM,
MPFROMSHORT(LIT_END), MPFROMSHORT(LIT_END),
@@ -423,7 +423,7 @@ MRESULT EXPENTRY FontDlgProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
0); 0);
if(i2) if(i2)
{ {
sprintf(fontsize, "%dx%d", (int)fonts[i].lAveCharWidth, (int)fonts[i].lMaxBaselineExt); snprintf(fontsize, sizeof fontsize, "%dx%d", (int)fonts[i].lAveCharWidth, (int)fonts[i].lMaxBaselineExt);
set_string_var(DEFAULT_FONT_VAR, fontsize); set_string_var(DEFAULT_FONT_VAR, fontsize);
} }
@@ -545,7 +545,7 @@ int mesg(char *format, ...) {
char outbuf[256]; char outbuf[256];
va_start(args, format); va_start(args, format);
vsprintf(outbuf, format, args); vsnprintf(outbuf, sizeof outbuf, format, args);
va_end(args); va_end(args);
WinMessageBox(HWND_DESKTOP, HWND_DESKTOP, outbuf, "PMBitchX", 0, MB_OK | MB_INFORMATION | MB_MOVEABLE); WinMessageBox(HWND_DESKTOP, HWND_DESKTOP, outbuf, "PMBitchX", 0, MB_OK | MB_INFORMATION | MB_MOVEABLE);
@@ -1935,7 +1935,7 @@ MRESULT EXPENTRY NotebookPage1DlgProc(HWND hWnd, ULONG msg, MPARAM mp1, MPARAM m
case INT_TYPE_VAR: case INT_TYPE_VAR:
WinEnableWindow(WinWindowFromID(hWnd, CB_ONOFF1), FALSE); WinEnableWindow(WinWindowFromID(hWnd, CB_ONOFF1), FALSE);
WinEnableWindow(WinWindowFromID(hWnd, EF_ENTRY1), TRUE); WinEnableWindow(WinWindowFromID(hWnd, EF_ENTRY1), TRUE);
sprintf(szBuffer, "%d", get_int_var(p1e)); snprintf(szBuffer, sizeof szBuffer, "%d", get_int_var(p1e));
WinSetDlgItemText(hWnd, EF_ENTRY1, szBuffer); WinSetDlgItemText(hWnd, EF_ENTRY1, szBuffer);
break; break;
case STR_TYPE_VAR: case STR_TYPE_VAR:
@@ -2075,7 +2075,7 @@ MRESULT EXPENTRY NotebookPage2DlgProc(HWND hWnd, ULONG msg, MPARAM mp1, MPARAM m
case INT_TYPE_VAR: case INT_TYPE_VAR:
WinEnableWindow(WinWindowFromID(hWnd, CB_ONOFF2), FALSE); WinEnableWindow(WinWindowFromID(hWnd, CB_ONOFF2), FALSE);
WinEnableWindow(WinWindowFromID(hWnd, EF_ENTRY2), TRUE); WinEnableWindow(WinWindowFromID(hWnd, EF_ENTRY2), TRUE);
sprintf(szBuffer, "%d", get_cset_int_var(chan->csets, p2e)); snprintf(szBuffer, sizeof szBuffer, "%d", get_cset_int_var(chan->csets, p2e));
WinSetDlgItemText(hWnd, EF_ENTRY2, szBuffer); WinSetDlgItemText(hWnd, EF_ENTRY2, szBuffer);
break; break;
case STR_TYPE_VAR: case STR_TYPE_VAR:
@@ -2341,7 +2341,7 @@ MRESULT EXPENTRY NotebookDlgProc(HWND hWnd, ULONG msg, MPARAM mp1, MPARAM mp2)
GpiQueryFontMetrics(hPS = WinGetPS(hWnd), sizeof(FONTMETRICS), &fm); GpiQueryFontMetrics(hPS = WinGetPS(hWnd), sizeof(FONTMETRICS), &fm);
if(nb_window->current_channel) if(nb_window->current_channel)
sprintf(szBuffer, "PMBitchX Properties for %s", nb_window->current_channel); snprintf(szBuffer, sizeof szBuffer, "PMBitchX Properties for %s", nb_window->current_channel);
else else
strcpy(szBuffer, "PMBitchX Properties"); strcpy(szBuffer, "PMBitchX Properties");
@@ -3697,7 +3697,7 @@ void gui_setfileinfo(char *filename, char *nick, int server)
update_clock(RESET_TIME); update_clock(RESET_TIME);
t = update_clock(GET_TIME); t = update_clock(GET_TIME);
sprintf(buffer, "%s@%s %s", nick, s ? s : "IRC", t ? t : "clock problem"); snprintf(buffer, sizeof buffer, "%s@%s %s", nick, s ? s : "IRC", t ? t : "clock problem");
time_format = NULL; time_format = NULL;
update_clock(RESET_TIME); update_clock(RESET_TIME);

View File

@@ -1651,7 +1651,7 @@ extern Window *BX_create_additional_screen (void)
} }
else if (screen_type == ST_XTERM) else if (screen_type == ST_XTERM)
{ {
snprintf(geom, 31, "%dx%d", current_term->TI_cols, current_term->TI_lines); snprintf(geom, sizeof geom, "%dx%d", current_term->TI_cols, current_term->TI_lines);
opts = LOCAL_COPY(get_string_var(XTERM_OPTIONS_VAR)); opts = LOCAL_COPY(get_string_var(XTERM_OPTIONS_VAR));
if (!(xterm = getenv("XTERM"))) if (!(xterm = getenv("XTERM")))
if (!(xterm = get_string_var(XTERM_VAR))) if (!(xterm = get_string_var(XTERM_VAR)))
@@ -1960,10 +1960,10 @@ void BX_xterm_settitle(void)
if ((o = convert_output_format(s, "%d %s %s %s %s %s", wincount, is_server_connected(tmp->current_window->server) ?get_server_nickname(tmp->current_window->server):nickname, if ((o = convert_output_format(s, "%d %s %s %s %s %s", wincount, is_server_connected(tmp->current_window->server) ?get_server_nickname(tmp->current_window->server):nickname,
tmpwindowchan ? tmpwindowchan : "<none>", irc_version, is_server_connected(from_server) ?get_server_itsname(from_server):"<unconnected>", tmptopic ? tmptopic : empty_string))) tmpwindowchan ? tmpwindowchan : "<none>", irc_version, is_server_connected(from_server) ?get_server_itsname(from_server):"<unconnected>", tmptopic ? tmptopic : empty_string)))
chop(o, 4); chop(o, 4);
snprintf(titlestring, BIG_BUFFER_SIZE, "%s", o); snprintf(titlestring, sizeof titlestring, "%s", o);
} }
else else
snprintf(titlestring, BIG_BUFFER_SIZE, "[%d] %s: %s - %s on %s", wincount, irc_version, tmp->current_window->current_channel ? tmp->current_window->current_channel : "<none>", is_server_connected(tmp->current_window->server) ?get_server_nickname(tmp->current_window->server):nickname, snprintf(titlestring, sizeof titlestring, "[%d] %s: %s - %s on %s", wincount, irc_version, tmp->current_window->current_channel ? tmp->current_window->current_channel : "<none>", is_server_connected(tmp->current_window->server) ?get_server_nickname(tmp->current_window->server):nickname,
is_server_connected(tmp->current_window->server) ?get_server_itsname(tmp->current_window->server):"<unconnected>"); is_server_connected(tmp->current_window->server) ?get_server_itsname(tmp->current_window->server):"<unconnected>");
#ifdef GUI #ifdef GUI
gui_settitle(stripansicodes(titlestring), tmp); gui_settitle(stripansicodes(titlestring), tmp);
@@ -1988,9 +1988,9 @@ void BX_xterm_settitle(void)
t = attach_ttyname; t = attach_ttyname;
if ((o = convert_output_format(s, "%s %s %s", t, nickname, c ? c : empty_string))) if ((o = convert_output_format(s, "%s %s %s", t, nickname, c ? c : empty_string)))
chop(o, 4); chop(o, 4);
snprintf(titlestring, BIG_BUFFER_SIZE, "\033]2;%s: %s", irc_version, o); snprintf(titlestring, sizeof titlestring, "\033]2;%s: %s", irc_version, o);
} else } else
snprintf(titlestring, BIG_BUFFER_SIZE, "\033]2;%s: %s on %s:%s", irc_version, is_server_connected(current_window->server) ?get_server_nickname(current_window->server):nickname, snprintf(titlestring, sizeof titlestring, "\033]2;%s: %s on %s:%s", irc_version, is_server_connected(current_window->server) ?get_server_nickname(current_window->server):nickname,
is_server_connected(current_window->server) ?get_server_itsname(current_window->server):"<not connected>", c); is_server_connected(current_window->server) ?get_server_itsname(current_window->server):"<not connected>", c);
tputs_x(titlestring); tputs_x(titlestring);
term_flush(); term_flush();

View File

@@ -147,7 +147,7 @@ void BX_close_server (int cs_index, char *message)
if (x_debug & DEBUG_OUTBOUND) if (x_debug & DEBUG_OUTBOUND)
yell("Closing server %d because [%s]", yell("Closing server %d because [%s]",
cs_index, message ? message : empty_string); cs_index, message ? message : empty_string);
snprintf(buffer, MAX_PROTOCOL_SIZE + 1, "QUIT :%s", message); snprintf(buffer, sizeof buffer, "QUIT :%s", message);
strlcat(buffer, "\r\n", IRCD_BUFFER_SIZE + 1); strlcat(buffer, "\r\n", IRCD_BUFFER_SIZE + 1);
#ifdef HAVE_SSL #ifdef HAVE_SSL
if (get_server_ssl(cs_index)) if (get_server_ssl(cs_index))
@@ -3432,7 +3432,7 @@ void show_server_map (void)
strlcpy(tmp1, convert_output_format("%K[%G$0%K]", "%d", tmp->hopcount), sizeof tmp1); strlcpy(tmp1, convert_output_format("%K[%G$0%K]", "%d", tmp->hopcount), sizeof tmp1);
else else
*tmp1 = 0; *tmp1 = 0;
snprintf(tmp2, BIG_BUFFER_SIZE, "$G %%W$[-%d]1%%c $0 %s", tmp->hopcount*3, tmp1); snprintf(tmp2, sizeof tmp2, "$G %%W$[-%d]1%%c $0 %s", tmp->hopcount*3, tmp1);
put_it("%s", convert_output_format(tmp2, "%s %s", tmp->name, prevdist!=tmp->hopcount?ascii:empty_string)); put_it("%s", convert_output_format(tmp2, "%s %s", tmp->name, prevdist!=tmp->hopcount?ascii:empty_string));
prevdist = tmp->hopcount; prevdist = tmp->hopcount;
new_free(&tmp->name); new_free(&tmp->name);

View File

@@ -707,7 +707,7 @@ void make_status(Window *win)
else else
len = 0; len = 0;
str = &buffer[len]; str = &buffer[len];
snprintf(str, BIG_BUFFER_SIZE - 1, snprintf(str, sizeof buffer,
win->wset->status_format[line], win->wset->status_format[line],
func_value[0], func_value[1], func_value[2], func_value[0], func_value[1], func_value[2],
func_value[3], func_value[4], func_value[5], func_value[3], func_value[4], func_value[5],
@@ -939,7 +939,7 @@ void make_status(Window *win)
static char *status_nickname(Window *window) static char *status_nickname(Window *window)
{ {
static char my_buffer[MY_BUFFER/2+1]; static char my_buffer[MY_BUFFER/2+1];
snprintf(my_buffer, MY_BUFFER/2, window->wset->nick_format, get_server_nickname(window->server)); snprintf(my_buffer, sizeof my_buffer, window->wset->nick_format, get_server_nickname(window->server));
return my_buffer; return my_buffer;
} }
@@ -955,7 +955,7 @@ static char my_buffer[MY_BUFFER+1];
{ {
if (!(name = get_server_itsname(window->server))) if (!(name = get_server_itsname(window->server)))
name = get_server_name(window->server); name = get_server_name(window->server);
snprintf(my_buffer, MY_BUFFER, window->wset->server_format, name); snprintf(my_buffer, sizeof my_buffer, window->wset->server_format, name);
} }
else else
RETURN_EMPTY; RETURN_EMPTY;
@@ -974,7 +974,7 @@ static char my_buffer[BIG_BUFFER_SIZE+1];
if (window->query_nick && window->wset->query_format) if (window->query_nick && window->wset->query_format)
{ {
snprintf(my_buffer, BIG_BUFFER_SIZE, window->wset->query_format, window->query_nick); snprintf(my_buffer, sizeof my_buffer, window->wset->query_format, window->query_nick);
return my_buffer; return my_buffer;
} }
else else
@@ -1023,7 +1023,7 @@ static char my_buf[MY_BUFFER+1];
if ((get_int_var(CLOCK_VAR) && window->wset->clock_format) && if ((get_int_var(CLOCK_VAR) && window->wset->clock_format) &&
(get_int_var(SHOW_STATUS_ALL_VAR) || (get_int_var(SHOW_STATUS_ALL_VAR) ||
(window == window->screen->current_window))) (window == window->screen->current_window)))
snprintf(my_buf, MY_BUFFER, window->wset->clock_format, update_clock(GET_TIME)); snprintf(my_buf, sizeof my_buf, window->wset->clock_format, update_clock(GET_TIME));
else else
RETURN_EMPTY; RETURN_EMPTY;
return my_buf; return my_buf;
@@ -1044,7 +1044,7 @@ static char my_buffer[MY_BUFFER+1];
double_quote(mode, "$", mode2); double_quote(mode, "$", mode2);
mode = mode2; mode = mode2;
} }
snprintf(my_buffer, MY_BUFFER, window->wset->mode_format, mode); snprintf(my_buffer, sizeof my_buffer, window->wset->mode_format, mode);
} }
else else
RETURN_EMPTY; RETURN_EMPTY;
@@ -1070,7 +1070,7 @@ static char my_buffer[MY_BUFFER/2+1];
} }
if (*localbuf && window->wset->umode_format) if (*localbuf && window->wset->umode_format)
snprintf(my_buffer, MY_BUFFER/2, window->wset->umode_format, localbuf); snprintf(my_buffer, sizeof my_buffer, window->wset->umode_format, localbuf);
else else
RETURN_EMPTY; RETURN_EMPTY;
return my_buffer; return my_buffer;
@@ -1107,7 +1107,7 @@ static char my_buffer[MY_BUFFER/2+1];
if ((num = (window->lines_held /10) * 10)) if ((num = (window->lines_held /10) * 10))
{ {
snprintf(my_buffer, MY_BUFFER/2, window->wset->hold_lines_format, ltoa(num)); snprintf(my_buffer, sizeof my_buffer, window->wset->hold_lines_format, ltoa(num));
return(my_buffer); return(my_buffer);
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1119,7 +1119,7 @@ static char my_buffer[MY_BUFFER/2+1];
if (get_int_var(MSGCOUNT_VAR) && window->wset->msgcount_format) if (get_int_var(MSGCOUNT_VAR) && window->wset->msgcount_format)
{ {
snprintf(my_buffer, MY_BUFFER/2, window->wset->msgcount_format, ltoa(get_int_var(MSGCOUNT_VAR))); snprintf(my_buffer, sizeof my_buffer, window->wset->msgcount_format, ltoa(get_int_var(MSGCOUNT_VAR)));
return my_buffer; return my_buffer;
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1149,7 +1149,7 @@ static char my_buffer[IRCD_BUFFER_SIZE + 1];
if ((num = get_int_var(CHANNEL_NAME_WIDTH_VAR)) && if ((num = get_int_var(CHANNEL_NAME_WIDTH_VAR)) &&
((int) strlen(channel) > num)) ((int) strlen(channel) > num))
channel[num] = (char) 0; channel[num] = (char) 0;
snprintf(my_buffer, IRCD_BUFFER_SIZE, window->wset->channel_format, channel); snprintf(my_buffer, sizeof my_buffer, window->wset->channel_format, channel);
return my_buffer; return my_buffer;
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1164,7 +1164,7 @@ static char my_buffer[MY_BUFFER/2+1];
(get_int_var(SHOW_STATUS_ALL_VAR) || (get_int_var(SHOW_STATUS_ALL_VAR) ||
(window == window->screen->current_window))) (window == window->screen->current_window)))
{ {
snprintf(my_buffer, MY_BUFFER/2, window->wset->mail_format, number); snprintf(my_buffer, sizeof my_buffer, window->wset->mail_format, number);
return my_buffer; return my_buffer;
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1205,7 +1205,7 @@ static char my_buffer[MY_BUFFER+1];
{ {
if (window->server != -1 && get_server_away(window->server)) if (window->server != -1 && get_server_away(window->server))
{ {
snprintf(my_buffer, MY_BUFFER, window->wset->away_format, ltoa(get_int_var(MSGCOUNT_VAR))); snprintf(my_buffer, sizeof my_buffer, window->wset->away_format, ltoa(get_int_var(MSGCOUNT_VAR)));
return my_buffer; return my_buffer;
} }
else else
@@ -1289,11 +1289,11 @@ static char my_buffer[MY_BUFFER/2+1];
if (get_server_lag(window->server) > -1) if (get_server_lag(window->server) > -1)
{ {
char p[40]; char p[40];
sprintf(p, "%2d",get_server_lag(window->server)); snprintf(p, sizeof p, "%2d", get_server_lag(window->server));
snprintf(my_buffer,MY_BUFFER/2, window->wset->lag_format, p); snprintf(my_buffer, sizeof my_buffer, window->wset->lag_format, p);
} }
else else
snprintf(my_buffer, MY_BUFFER/2, window->wset->lag_format, "??"); snprintf(my_buffer, sizeof my_buffer, window->wset->lag_format, "??");
return(my_buffer); return(my_buffer);
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1315,7 +1315,7 @@ static char my_buffer[MY_BUFFER+41];
double_quote(t, "()[]$\"", t2); double_quote(t, "()[]$\"", t2);
else else
strcpy(t2, t); strcpy(t2, t);
snprintf(my_buffer, MY_BUFFER, window->wset->topic_format, stripansicodes(t2)); snprintf(my_buffer, sizeof my_buffer, window->wset->topic_format, stripansicodes(t2));
} }
else else
strlcpy(my_buffer, "No Topic", sizeof my_buffer); strlcpy(my_buffer, "No Topic", sizeof my_buffer);
@@ -1378,8 +1378,8 @@ static char my_buffer[MY_BUFFER+1];
if (window->wset->kills_format && (nick_collisions || oper_kills)) if (window->wset->kills_format && (nick_collisions || oper_kills))
{ {
char tmp[30]; char tmp[30];
snprintf(tmp, 29, "%ld", nick_collisions); snprintf(tmp, sizeof tmp, "%ld", nick_collisions);
snprintf(my_buffer, MY_BUFFER, window->wset->kills_format, tmp, ltoa(oper_kills)); snprintf(my_buffer, sizeof my_buffer, window->wset->kills_format, tmp, ltoa(oper_kills));
return my_buffer; return my_buffer;
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1393,7 +1393,7 @@ static char my_buffer[2 * MY_BUFFER+1];
{ {
char tmp[30]; char tmp[30];
strcpy(tmp, ltoa(send_count_stat)); strcpy(tmp, ltoa(send_count_stat));
snprintf(my_buffer, 2 * MY_BUFFER, window->wset->dcccount_format, ltoa(get_count_stat), tmp); snprintf(my_buffer, sizeof my_buffer, window->wset->dcccount_format, ltoa(get_count_stat), tmp);
return my_buffer; return my_buffer;
} }
RETURN_EMPTY; RETURN_EMPTY;
@@ -1408,7 +1408,7 @@ static char my_buffer[2 * MY_BUFFER+1];
{ {
char tmp[30]; char tmp[30];
strcpy(tmp, ltoa(cdcc_numpacks)); strcpy(tmp, ltoa(cdcc_numpacks));
snprintf(my_buffer, 2 * MY_BUFFER, window->wset->cdcc_format, ltoa(send_numpacks), tmp); snprintf(my_buffer, sizeof my_buffer, window->wset->cdcc_format, ltoa(send_numpacks), tmp);
return my_buffer; return my_buffer;
} }
#endif #endif
@@ -1420,7 +1420,7 @@ static char *status_cpu_saver_mode (Window *window)
static char my_buffer[MY_BUFFER/2+1]; static char my_buffer[MY_BUFFER/2+1];
if (cpu_saver && window->wset->cpu_saver_format) if (cpu_saver && window->wset->cpu_saver_format)
{ {
snprintf(my_buffer, MY_BUFFER/2, window->wset->cpu_saver_format, "cpu"); snprintf(my_buffer, sizeof my_buffer, window->wset->cpu_saver_format, "cpu");
return my_buffer; return my_buffer;
} }
@@ -1458,7 +1458,7 @@ int serv = window->server;
strcpy(buff2,ltoa(ircop)); strcpy(buff2,ltoa(ircop));
strcpy(buff3, ltoa(voice)); strcpy(buff3, ltoa(voice));
strcpy(buff4, ltoa(friends)); strcpy(buff4, ltoa(friends));
snprintf(my_buffer, MY_BUFFER*2, window->wset->status_users_format, buff, buff1, buff2, buff3, buff4); snprintf(my_buffer, sizeof my_buffer, window->wset->status_users_format, buff, buff1, buff2, buff3, buff4);
return my_buffer; return my_buffer;
} }
} }
@@ -1482,7 +1482,7 @@ static char *status_position (Window *window)
{ {
static char my_buffer[MY_BUFFER/2+1]; static char my_buffer[MY_BUFFER/2+1];
snprintf(my_buffer, MY_BUFFER/2, "(%d-%d)", window->lines_scrolled_back, snprintf(my_buffer, sizeof my_buffer, "(%d-%d)", window->lines_scrolled_back,
window->distance_from_display); window->distance_from_display);
return my_buffer; return my_buffer;
} }
@@ -1573,7 +1573,7 @@ int serv = window->server;
static char my_buffer[40] = "\0"; static char my_buffer[40] = "\0";
int on, off; int on, off;
notify_count(serv, &on, &off); notify_count(serv, &on, &off);
sprintf(my_buffer, "%d %d", on, off); snprintf(my_buffer, sizeof my_buffer, "%d %d", on, off);
return my_buffer; return my_buffer;
} }

View File

@@ -147,7 +147,7 @@ int i;
{ {
DCC_int *n; DCC_int *n;
n = (DCC_int *)s->info; n = (DCC_int *)s->info;
sprintf(buff, "%d %s", n->dccnum, s->server); snprintf(buff, sizeof buff, "%d %s", n->dccnum, s->server);
Tcl_AppendElement(irp, buff); Tcl_AppendElement(irp, buff);
count++; count++;
} }
@@ -176,7 +176,7 @@ int count = 0;
if ((s->flags & DCC_TYPES) == DCC_CHAT) if ((s->flags & DCC_TYPES) == DCC_CHAT)
{ {
n = (DCC_int *) s->info; n = (DCC_int *) s->info;
sprintf(buff, "%d %s", n->dccnum, s->server); snprintf(buff, sizeof buff, "%d %s", n->dccnum, s->server);
Tcl_AppendElement(irp, buff); Tcl_AppendElement(irp, buff);
count++; count++;
} }
@@ -1143,7 +1143,7 @@ int tcl_unixtime STDVAR
BADARGS(1,1,""); BADARGS(1,1,"");
sprintf(s,"%lu", now); snprintf(s, sizeof s, "%lu", now);
Tcl_AppendResult(irp,s,NULL); Tcl_AppendResult(irp,s,NULL);
return TCL_OK; return TCL_OK;
} }
@@ -1570,7 +1570,7 @@ char *x; char s[80];
if (argv[2][0]!='#') if (argv[2][0]!='#')
{ {
x = tcl_add_timer(&tcl_Pending_timers, atol(argv[1])*60, argv[2], 0L); x = tcl_add_timer(&tcl_Pending_timers, atol(argv[1])*60, argv[2], 0L);
sprintf(s,"timer%s",x); snprintf(s, sizeof s, "timer%s", x);
Tcl_AppendResult(irp,s,NULL); Tcl_AppendResult(irp,s,NULL);
} }
return TCL_OK; return TCL_OK;
@@ -1589,7 +1589,7 @@ char s[80];
return TCL_ERROR; return TCL_ERROR;
} }
x = rand() % (strtoul(argv[1], NULL, 10)); x = rand() % (strtoul(argv[1], NULL, 10));
sprintf(s,"%lu",x); snprintf(s, sizeof s, "%lu", x);
Tcl_AppendResult(irp,s,NULL); Tcl_AppendResult(irp,s,NULL);
return TCL_OK; return TCL_OK;
} }
@@ -1607,7 +1607,7 @@ char s[80];
if (argv[2][0]!='#') if (argv[2][0]!='#')
{ {
x=tcl_add_timer(&tcl_Pending_utimers, atol(argv[1]), argv[2], 0L); x=tcl_add_timer(&tcl_Pending_utimers, atol(argv[1]), argv[2], 0L);
sprintf(s,"timer%s",x); snprintf(s, sizeof s, "timer%s", x);
Tcl_AppendResult(irp,s,NULL); Tcl_AppendResult(irp,s,NULL);
} }
return TCL_OK; return TCL_OK;
@@ -1840,7 +1840,7 @@ UserList *n;
if ((n = lookup_userlevelc("*", uhost, channel, NULL))) if ((n = lookup_userlevelc("*", uhost, channel, NULL)))
atr=n->flags; atr=n->flags;
snprintf(args, BIG_BUFFER_SIZE, "%s %s!%s", channel, nick, uhost); snprintf(args, sizeof args, "%s %s!%s", channel, nick, uhost);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -1856,7 +1856,7 @@ char args[BIG_BUFFER_SIZE+1];
UserList *n; UserList *n;
int x; int x;
snprintf(args,BIG_BUFFER_SIZE, "%s %s!%s",chname,nick,uhost); snprintf(args, sizeof args, "%s %s!%s", chname, nick, uhost);
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
@@ -1875,7 +1875,7 @@ UserList *n;
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
snprintf(args,BIG_BUFFER_SIZE, "%s %s!%s",chname,nick,uhost); snprintf(args, sizeof args, "%s %s!%s", chname, nick, uhost);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -1891,7 +1891,7 @@ int atr = 0;
char args[BIG_BUFFER_SIZE+1]; char args[BIG_BUFFER_SIZE+1];
UserList *n; UserList *n;
snprintf(args,BIG_BUFFER_SIZE, "%s %s",chname,topic); snprintf(args, sizeof args, "%s %s", chname, topic);
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
@@ -1911,7 +1911,7 @@ UserList *n;
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
snprintf(args, BIG_BUFFER_SIZE, "%s %s",chname,newnick); snprintf(args, sizeof args, "%s %s", chname, newnick);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -1929,7 +1929,7 @@ UserList *n;
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
sprintf(args,"%s %s",chname,dest); snprintf(args, sizeof args, "%s %s", chname, dest);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -1992,7 +1992,7 @@ char args[BIG_BUFFER_SIZE+1];
UserList *n; UserList *n;
n = lookup_userlevelc("*",uhost, chname, NULL); n = lookup_userlevelc("*",uhost, chname, NULL);
snprintf(args,BIG_BUFFER_SIZE, "%s %s",chname,mode); snprintf(args, sizeof args, "%s %s", chname, mode);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -2060,7 +2060,7 @@ UserList *n;
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
snprintf(args,BIG_BUFFER_SIZE, "%s %s!%s",chname,nick,uhost); snprintf(args, sizeof args, "%s %s!%s", chname, nick, uhost);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -2078,7 +2078,7 @@ UserList *n;
if ((n = lookup_userlevelc("*",uhost, chname, NULL))) if ((n = lookup_userlevelc("*",uhost, chname, NULL)))
atr = n->flags; atr = n->flags;
sprintf(args,"%s %s!%s",chname,nick,uhost); snprintf(args, sizeof args, "%s %s!%s", chname, nick, uhost);
Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",nick,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_uh",uhost,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_h",n?n->nick:hand,TCL_GLOBAL_ONLY);
@@ -2094,7 +2094,7 @@ int idx; char *text;
char s[10]; int x,atr; char s[10]; int x,atr;
atr=get_attr_handle(dcc[idx].nick); sprintf(s,"%d",dcc[idx].sock); atr=get_attr_handle(dcc[idx].nick); snprintf(s, sizeof s, "%d", dcc[idx].sock);
Tcl_SetVar(tcl_interp,"_n",s,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_n",s,TCL_GLOBAL_ONLY);
Tcl_SetVar(tcl_interp,"_a",text,TCL_GLOBAL_ONLY); Tcl_SetVar(tcl_interp,"_a",text,TCL_GLOBAL_ONLY);
x=check_tcl_bind(&H_filt,text,atr," $_n $_a", x=check_tcl_bind(&H_filt,text,atr," $_n $_a",

View File

@@ -1089,7 +1089,7 @@ int Tcl_RelativeExpr (Tcl_Interp *tcl_interp, char *cstringExpr, long stringLen,
return Tcl_ExprLong (tcl_interp, cstringExpr, exprResultPtr); return Tcl_ExprLong (tcl_interp, cstringExpr, exprResultPtr);
} }
sprintf (staticBuf, "%ld", snprintf (staticBuf, sizeof staticBuf, "%ld",
stringLen - ((cstringExpr [0] == 'e') ? 1 : 0)); stringLen - ((cstringExpr [0] == 'e') ? 1 : 0));
exprLen = strlen (staticBuf) + strlen (cstringExpr) - 2; exprLen = strlen (staticBuf) + strlen (cstringExpr) - 2;

View File

@@ -1170,9 +1170,9 @@ int term_init (char *term)
else if (current_term->TI_setf) else if (current_term->TI_setf)
strcat(cbuf, (char *)tparm(current_term->TI_setf, i & 0x07, 0)); strcat(cbuf, (char *)tparm(current_term->TI_setf, i & 0x07, 0));
else if (i >= 8) else if (i >= 8)
sprintf(cbuf, "\033[1;%dm", (i & 0x07) + 30); snprintf(cbuf, sizeof cbuf, "\033[1;%dm", (i & 0x07) + 30);
else else
sprintf(cbuf, "\033[%dm", (i & 0x07) + 30); snprintf(cbuf, sizeof cbuf, "\033[%dm", (i & 0x07) + 30);
current_term->TI_forecolors[i] = m_strdup(cbuf); current_term->TI_forecolors[i] = m_strdup(cbuf);
} }
@@ -1190,9 +1190,9 @@ int term_init (char *term)
else if (current_term->TI_setb) else if (current_term->TI_setb)
strcat (cbuf, tparm(current_term->TI_setb, i & 0x07, 0)); strcat (cbuf, tparm(current_term->TI_setb, i & 0x07, 0));
else if (i >= 8) else if (i >= 8)
sprintf(cbuf, "\033[1;%dm", (i & 0x07) + 40); snprintf(cbuf, sizeof cbuf, "\033[1;%dm", (i & 0x07) + 40);
else else
sprintf(cbuf, "\033[%dm", (i & 0x07) + 40); snprintf(cbuf, sizeof cbuf, "\033[%dm", (i & 0x07) + 40);
current_term->TI_backcolors[i] = m_strdup(cbuf); current_term->TI_backcolors[i] = m_strdup(cbuf);
} }

View File

@@ -287,7 +287,7 @@ static void show_timer (char *command)
time_left = BX_time_diff(current, tmp->time); time_left = BX_time_diff(current, tmp->time);
if (time_left < 0) if (time_left < 0)
time_left = 0; time_left = 0;
sprintf(buf, "%0.3f", time_left); snprintf(buf, sizeof buf, "%0.3f", time_left);
put_it("%s", convert_output_format(fget_string_var(FORMAT_TIMER_FSET), "%s %s %d %s %s", tmp->ref, buf, tmp->events, tmp->callback? "(internal callback)" : (tmp->command? tmp->command : ""), tmp->whom ? tmp->whom : empty_string )); put_it("%s", convert_output_format(fget_string_var(FORMAT_TIMER_FSET), "%s %s %d %s %s", tmp->ref, buf, tmp->events, tmp->callback? "(internal callback)" : (tmp->command? tmp->command : ""), tmp->whom ? tmp->whom : empty_string ));
} }
} }
@@ -467,7 +467,7 @@ TimerList *tmp;
time_left = BX_time_diff(current, tmp->time); time_left = BX_time_diff(current, tmp->time);
if (time_left < 0) if (time_left < 0)
time_left = 0.0; time_left = 0.0;
sprintf(buf, "%0.3f", time_left); snprintf(buf, sizeof buf, "%0.3f", time_left);
malloc_sprintf(&out, "%s %d %d %d %d %s %s %s", tmp->ref, tmp->server, tmp->window, tmp->interval, tmp->events, buf, tmp->callback? "(internal callback)" : (tmp->command? tmp->command : ""), tmp->whom ? tmp->whom : empty_string ); malloc_sprintf(&out, "%s %d %d %d %d %s %s %s", tmp->ref, tmp->server, tmp->window, tmp->interval, tmp->events, buf, tmp->callback? "(internal callback)" : (tmp->command? tmp->command : ""), tmp->whom ? tmp->whom : empty_string );
return ref; return ref;
} }

View File

@@ -367,7 +367,7 @@ BUILT_IN_COMMAND(digraph)
i = 0; i = 0;
while(dig_table_lo[i]) while(dig_table_lo[i])
{ {
sprintf(buffer1, "%c%c %c ", dig_table_lo[i], snprintf(buffer1, sizeof buffer1, "%c%c %c ", dig_table_lo[i],
dig_table_hi[i], dig_table_di[i]); dig_table_hi[i], dig_table_di[i]);
strcat(buffer2, buffer1); strcat(buffer2, buffer1);
if ((++i % 10) == 0) if ((++i % 10) == 0)
@@ -378,7 +378,7 @@ BUILT_IN_COMMAND(digraph)
} }
if (buffer2[0]) if (buffer2[0])
put_it(buffer2); put_it(buffer2);
sprintf(buffer2, "%d digraphs listed.", i); snprintf(buffer2, sizeof buffer2, "%d digraphs listed.", i);
say(buffer2); say(buffer2);
} }
} }

View File

@@ -230,7 +230,7 @@ void prepare_addshit(UserhostItem *stuff, char *nick, char *args)
uh = clear_server_flags(stuff->user); uh = clear_server_flags(stuff->user);
while (strlen(uh) > 7) uh++; while (strlen(uh) > 7) uh++;
sprintf(listbuf, "*%s@%s", uh, stuff->host); snprintf(listbuf, sizeof listbuf, "*%s@%s", uh, stuff->host);
add_to_a_list(listbuf, thetype, "*", channels, reason, shit); add_to_a_list(listbuf, thetype, "*", channels, reason, shit);
} }
@@ -653,7 +653,7 @@ char *check;
for (nick = next_nicklist(chan, NULL); nick; nick = next_nicklist(chan, nick)) for (nick = next_nicklist(chan, NULL); nick; nick = next_nicklist(chan, nick))
{ {
check = clear_server_flags(nick->host); check = clear_server_flags(nick->host);
sprintf(tmp, "%s!%s", nick->nick, check); snprintf(tmp, sizeof tmp, "%s!%s", nick->nick, check);
if (wild_match(added->filter, tmp)) if (wild_match(added->filter, tmp))
{ {
if (type) if (type)
@@ -863,7 +863,7 @@ register ShitList *thisptr = shitlist_list;
if (!uh || !niq) if (!uh || !niq)
return NULL; return NULL;
u = clear_server_flags(uh); u = clear_server_flags(uh);
sprintf(theuh, "%s!%s", niq, u); snprintf(theuh, sizeof theuh, "%s!%s", niq, u);
while (thisptr) while (thisptr)
{ {
if (!strcmp(thisptr->filter, theuh) || (/*wild_match(theuh, thisptr->filter) || */wild_match(thisptr->filter, theuh))) if (!strcmp(thisptr->filter, theuh) || (/*wild_match(theuh, thisptr->filter) || */wild_match(thisptr->filter, theuh)))
@@ -1568,7 +1568,7 @@ BUILT_IN_COMMAND(savelists)
int size = -1; int size = -1;
sprintf(thefile, "%s/%s.sav", get_string_var(CTOOLZ_DIR_VAR), version); snprintf(thefile, sizeof thefile, "%s/%s.sav", get_string_var(CTOOLZ_DIR_VAR), version);
if ((p = expand_twiddle(thefile))) if ((p = expand_twiddle(thefile)))
outfile = fopen(p, "w"); outfile = fopen(p, "w");

View File

@@ -357,7 +357,7 @@ void BX_whobase(char *args, void (*line) (WhoEntry *, char *, char **), void (*e
char buffer[BIG_BUFFER_SIZE+1]; char buffer[BIG_BUFFER_SIZE+1];
*buffer = 0; *buffer = 0;
va_start(arg, format); va_start(arg, format);
vsnprintf(buffer, BIG_BUFFER_SIZE, format, arg); vsnprintf(buffer, sizeof buffer, format, arg);
va_end(arg); va_end(arg);
new_w->who_buff = m_strdup(buffer); new_w->who_buff = m_strdup(buffer);
} }
@@ -473,7 +473,7 @@ do
char buffer[1024]; char buffer[1024];
channel = "Channel"; channel = "Channel";
snprintf(buffer, 1024, "%s %s %s %s %s %s %s", channel, snprintf(buffer, sizeof buffer, "%s %s %s %s %s %s %s", channel,
nick, stat, user, host, server, name); nick, stat, user, host, server, name);
set_display_target(channel, LOG_CRAP); set_display_target(channel, LOG_CRAP);
if (new_w->who_stuff) if (new_w->who_stuff)
@@ -518,7 +518,7 @@ do
{ {
char buffer[1024]; char buffer[1024];
snprintf(buffer, 1023, "%s %s %s %s %s %s %s", channel, snprintf(buffer, sizeof buffer, "%s %s %s %s %s %s %s", channel,
nick, stat, user, host, server, name); nick, stat, user, host, server, name);
set_display_target(channel, LOG_CRAP); set_display_target(channel, LOG_CRAP);
@@ -564,7 +564,7 @@ void who_end (char *from, char **ArgList)
new_w->end(new_w, from, ArgList); new_w->end(new_w, from, ArgList);
else else
{ {
snprintf(buffer, 1024, "%s %s %s", from, ArgList[0], ArgList[1]); snprintf(buffer, sizeof buffer, "%s %s %s", from, ArgList[0], ArgList[1]);
if (new_w->who_end) if (new_w->who_end)
parse_line(NULL, new_w->who_end, buffer, 0, 0, 1); parse_line(NULL, new_w->who_end, buffer, 0, 0, 1);

View File

@@ -243,7 +243,7 @@ char user[BIG_BUFFER_SIZE];
{ {
if (check_channel_match(added->channels, tmp->channel)) if (check_channel_match(added->channels, tmp->channel))
{ {
sprintf(user, "%s!%s", tmp->nicklist->nick, tmp->nicklist->host); snprintf(user, sizeof user, "%s!%s", tmp->nicklist->nick, tmp->nicklist->host);
if (wild_match(added->filter, user)) if (wild_match(added->filter, user))
tmp->nicklist->shitlist = added; tmp->nicklist->shitlist = added;
} }
@@ -252,7 +252,7 @@ char user[BIG_BUFFER_SIZE];
{ {
if (check_channel_match(added->channels, tmp->channel)) if (check_channel_match(added->channels, tmp->channel))
{ {
sprintf(user, "%s!%s", tmp->nicklist->nick, tmp->nicklist->host); snprintf(user, sizeof user, "%s!%s", tmp->nicklist->nick, tmp->nicklist->host);
if (wild_match(added->filter, user)) if (wild_match(added->filter, user))
tmp->nicklist->shitlist = added; tmp->nicklist->shitlist = added;
} }

View File

@@ -235,7 +235,7 @@ void BX_delete_window(Window *window)
if (window->name) if (window->name)
strlcpy(buffer, window->name, sizeof buffer); strlcpy(buffer, window->name, sizeof buffer);
else else
sprintf(buffer, "%u", window->refnum); snprintf(buffer, sizeof buffer, "%u", window->refnum);
/* /*
* If this window is the "previous" window, then we make the current * If this window is the "previous" window, then we make the current

View File

@@ -73,7 +73,7 @@ int main (int argc, char **argv)
* can grab the size of the tty, and have it changed. * can grab the size of the tty, and have it changed.
*/ */
tmp = ttyname(0); tmp = ttyname(0);
sprintf(stuff, "%s\n", tmp); snprintf(stuff, sizeof stuff, "%s\n", tmp);
t = write(s, stuff, strlen(stuff)); t = write(s, stuff, strlen(stuff));
term_init(NULL); term_init(NULL);
printf("t is %d", t); printf("t is %d", t);