svn commit: r201050 - in user/luigi/ipfw3-head: . bin/setfacl
bin/sh contrib/telnet/telnetd contrib/top etc
lib/libc/posix1e lib/libpam/modules/pam_lastlog lib/libulog
libexec/atrun libexec/talkd r...
Luigi Rizzo
luigi at FreeBSD.org
Sun Dec 27 13:56:36 UTC 2009
Author: luigi
Date: Sun Dec 27 13:56:35 2009
New Revision: 201050
URL: http://svn.freebsd.org/changeset/base/201050
Log:
svn merge -r 200947:201048 from HEAD
Added:
user/luigi/ipfw3-head/share/man/man4/mk48txx.4
- copied unchanged from r201048, head/share/man/man4/mk48txx.4
user/luigi/ipfw3-head/tools/regression/bin/sh/builtins/fc2.0
- copied unchanged from r201048, head/tools/regression/bin/sh/builtins/fc2.0
Modified:
user/luigi/ipfw3-head/UPDATING
user/luigi/ipfw3-head/bin/setfacl/merge.c
user/luigi/ipfw3-head/bin/setfacl/remove.c
user/luigi/ipfw3-head/bin/setfacl/setfacl.h
user/luigi/ipfw3-head/bin/setfacl/util.c
user/luigi/ipfw3-head/bin/sh/alias.c
user/luigi/ipfw3-head/bin/sh/alias.h
user/luigi/ipfw3-head/bin/sh/arith.h
user/luigi/ipfw3-head/bin/sh/arith.y
user/luigi/ipfw3-head/bin/sh/cd.c
user/luigi/ipfw3-head/bin/sh/error.c
user/luigi/ipfw3-head/bin/sh/error.h
user/luigi/ipfw3-head/bin/sh/exec.c
user/luigi/ipfw3-head/bin/sh/exec.h
user/luigi/ipfw3-head/bin/sh/expand.c
user/luigi/ipfw3-head/bin/sh/expand.h
user/luigi/ipfw3-head/bin/sh/histedit.c
user/luigi/ipfw3-head/bin/sh/input.c
user/luigi/ipfw3-head/bin/sh/input.h
user/luigi/ipfw3-head/bin/sh/jobs.c
user/luigi/ipfw3-head/bin/sh/mail.c
user/luigi/ipfw3-head/bin/sh/main.c
user/luigi/ipfw3-head/bin/sh/main.h
user/luigi/ipfw3-head/bin/sh/memalloc.c
user/luigi/ipfw3-head/bin/sh/memalloc.h
user/luigi/ipfw3-head/bin/sh/myhistedit.h
user/luigi/ipfw3-head/bin/sh/options.c
user/luigi/ipfw3-head/bin/sh/options.h
user/luigi/ipfw3-head/bin/sh/output.c
user/luigi/ipfw3-head/bin/sh/output.h
user/luigi/ipfw3-head/bin/sh/parser.c
user/luigi/ipfw3-head/bin/sh/parser.h
user/luigi/ipfw3-head/bin/sh/show.c
user/luigi/ipfw3-head/bin/sh/show.h
user/luigi/ipfw3-head/bin/sh/trap.h
user/luigi/ipfw3-head/bin/sh/var.c
user/luigi/ipfw3-head/bin/sh/var.h
user/luigi/ipfw3-head/contrib/telnet/telnetd/sys_term.c
user/luigi/ipfw3-head/contrib/top/username.c
user/luigi/ipfw3-head/etc/rc.subr
user/luigi/ipfw3-head/lib/libc/posix1e/acl_delete_entry.c
user/luigi/ipfw3-head/lib/libpam/modules/pam_lastlog/pam_lastlog.c
user/luigi/ipfw3-head/lib/libulog/ulog.h
user/luigi/ipfw3-head/lib/libulog/ulog_getutxent.c
user/luigi/ipfw3-head/lib/libulog/ulog_pututxline.c
user/luigi/ipfw3-head/lib/libulog/ulog_setutxfile.3
user/luigi/ipfw3-head/libexec/atrun/atrun.c
user/luigi/ipfw3-head/libexec/talkd/Makefile
user/luigi/ipfw3-head/libexec/talkd/process.c
user/luigi/ipfw3-head/release/picobsd/bridge/PICOBSD
user/luigi/ipfw3-head/release/picobsd/bridge/crunch.conf
user/luigi/ipfw3-head/sbin/nfsiod/nfsiod.8
user/luigi/ipfw3-head/sbin/nfsiod/nfsiod.c
user/luigi/ipfw3-head/share/man/man4/Makefile
user/luigi/ipfw3-head/share/man/man4/gem.4
user/luigi/ipfw3-head/share/man/man4/ste.4
user/luigi/ipfw3-head/sys/cam/ata/ata_da.c
user/luigi/ipfw3-head/sys/conf/files.ia64
user/luigi/ipfw3-head/sys/dev/ae/if_ae.c
user/luigi/ipfw3-head/sys/dev/ahci/ahci.c
user/luigi/ipfw3-head/sys/dev/hwpmc/hwpmc_core.c
user/luigi/ipfw3-head/sys/dev/hwpmc/hwpmc_mod.c
user/luigi/ipfw3-head/sys/dev/jme/if_jme.c
user/luigi/ipfw3-head/sys/dev/mc146818/mc146818.c
user/luigi/ipfw3-head/sys/dev/mc146818/mc146818reg.h
user/luigi/ipfw3-head/sys/dev/mc146818/mc146818var.h
user/luigi/ipfw3-head/sys/dev/mk48txx/mk48txx.c
user/luigi/ipfw3-head/sys/dev/mk48txx/mk48txxreg.h
user/luigi/ipfw3-head/sys/dev/mk48txx/mk48txxvar.h
user/luigi/ipfw3-head/sys/dev/ste/if_ste.c
user/luigi/ipfw3-head/sys/dev/ste/if_stereg.h
user/luigi/ipfw3-head/sys/dev/twe/twe.c
user/luigi/ipfw3-head/sys/dev/twe/twe_freebsd.c
user/luigi/ipfw3-head/sys/dev/twe/twevar.h
user/luigi/ipfw3-head/sys/dev/usb/net/if_aue.c
user/luigi/ipfw3-head/sys/dev/usb/net/if_axe.c
user/luigi/ipfw3-head/sys/dev/usb/net/if_cue.c
user/luigi/ipfw3-head/sys/dev/usb/net/if_kue.c
user/luigi/ipfw3-head/sys/dev/usb/serial/uftdi.c
user/luigi/ipfw3-head/sys/dev/usb/serial/uplcom.c
user/luigi/ipfw3-head/sys/dev/usb/serial/uslcom.c
user/luigi/ipfw3-head/sys/dev/usb/serial/uvisor.c
user/luigi/ipfw3-head/sys/dev/usb/usbdevs
user/luigi/ipfw3-head/sys/dev/usb/wlan/if_rum.c
user/luigi/ipfw3-head/sys/dev/usb/wlan/if_ural.c
user/luigi/ipfw3-head/sys/dev/vge/if_vge.c
user/luigi/ipfw3-head/sys/fs/nfs/nfs_commonacl.c
user/luigi/ipfw3-head/sys/fs/nfs/nfs_var.h
user/luigi/ipfw3-head/sys/fs/nfsclient/nfs.h
user/luigi/ipfw3-head/sys/fs/nfsclient/nfs_clbio.c
user/luigi/ipfw3-head/sys/fs/nfsclient/nfs_clvnops.c
user/luigi/ipfw3-head/sys/fs/nfsserver/nfs_nfsdport.c
user/luigi/ipfw3-head/sys/fs/nfsserver/nfs_nfsdserv.c
user/luigi/ipfw3-head/sys/ia64/include/cpufunc.h
user/luigi/ipfw3-head/sys/kern/kern_proc.c
user/luigi/ipfw3-head/sys/kern/kern_rmlock.c
user/luigi/ipfw3-head/sys/kern/subr_acl_nfs4.c
user/luigi/ipfw3-head/sys/kern/subr_acl_posix1e.c
user/luigi/ipfw3-head/sys/kern/vfs_subr.c
user/luigi/ipfw3-head/sys/nfsclient/krpc_subr.c
user/luigi/ipfw3-head/sys/sparc64/include/intr_machdep.h
user/luigi/ipfw3-head/sys/sparc64/pci/ofw_pcib.c
user/luigi/ipfw3-head/sys/sparc64/pci/psycho.c
user/luigi/ipfw3-head/sys/sparc64/pci/schizo.c
user/luigi/ipfw3-head/sys/sparc64/sparc64/eeprom.c
user/luigi/ipfw3-head/sys/sparc64/sparc64/intr_machdep.c
user/luigi/ipfw3-head/sys/sparc64/sparc64/nexus.c
user/luigi/ipfw3-head/sys/sparc64/sparc64/rtc.c
user/luigi/ipfw3-head/sys/sys/pmc.h
user/luigi/ipfw3-head/tools/regression/acltools/tools-crossfs.test
user/luigi/ipfw3-head/usr.bin/killall/killall.1
user/luigi/ipfw3-head/usr.bin/rwho/rwho.c
user/luigi/ipfw3-head/usr.bin/who/who.c
user/luigi/ipfw3-head/usr.sbin/bsnmpd/modules/snmp_hostres/Makefile
user/luigi/ipfw3-head/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_scalars.c
user/luigi/ipfw3-head/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.c
user/luigi/ipfw3-head/usr.sbin/diskinfo/diskinfo.8
user/luigi/ipfw3-head/usr.sbin/diskinfo/diskinfo.c
user/luigi/ipfw3-head/usr.sbin/lastlogin/lastlogin.c
user/luigi/ipfw3-head/usr.sbin/ntp/config.h
user/luigi/ipfw3-head/usr.sbin/service/service.8
user/luigi/ipfw3-head/usr.sbin/syslogd/Makefile
user/luigi/ipfw3-head/usr.sbin/syslogd/syslogd.c
user/luigi/ipfw3-head/usr.sbin/wake/wake.8
user/luigi/ipfw3-head/usr.sbin/wake/wake.c
Directory Properties:
user/luigi/ipfw3-head/ (props changed)
user/luigi/ipfw3-head/cddl/contrib/opensolaris/ (props changed)
user/luigi/ipfw3-head/contrib/bind9/ (props changed)
user/luigi/ipfw3-head/contrib/cpio/ (props changed)
user/luigi/ipfw3-head/contrib/csup/ (props changed)
user/luigi/ipfw3-head/contrib/ee/ (props changed)
user/luigi/ipfw3-head/contrib/expat/ (props changed)
user/luigi/ipfw3-head/contrib/file/ (props changed)
user/luigi/ipfw3-head/contrib/gdb/ (props changed)
user/luigi/ipfw3-head/contrib/gdtoa/ (props changed)
user/luigi/ipfw3-head/contrib/less/ (props changed)
user/luigi/ipfw3-head/contrib/libpcap/ (props changed)
user/luigi/ipfw3-head/contrib/ncurses/ (props changed)
user/luigi/ipfw3-head/contrib/netcat/ (props changed)
user/luigi/ipfw3-head/contrib/ntp/ (props changed)
user/luigi/ipfw3-head/contrib/openbsm/ (props changed)
user/luigi/ipfw3-head/contrib/openpam/ (props changed)
user/luigi/ipfw3-head/contrib/pf/ (props changed)
user/luigi/ipfw3-head/contrib/sendmail/ (props changed)
user/luigi/ipfw3-head/contrib/tcpdump/ (props changed)
user/luigi/ipfw3-head/contrib/tcsh/ (props changed)
user/luigi/ipfw3-head/contrib/top/ (props changed)
user/luigi/ipfw3-head/contrib/top/install-sh (props changed)
user/luigi/ipfw3-head/contrib/wpa/ (props changed)
user/luigi/ipfw3-head/crypto/openssh/ (props changed)
user/luigi/ipfw3-head/crypto/openssl/ (props changed)
user/luigi/ipfw3-head/lib/libc/ (props changed)
user/luigi/ipfw3-head/lib/libc/stdtime/ (props changed)
user/luigi/ipfw3-head/lib/libutil/ (props changed)
user/luigi/ipfw3-head/sbin/ (props changed)
user/luigi/ipfw3-head/sbin/ipfw/ (props changed)
user/luigi/ipfw3-head/share/zoneinfo/ (props changed)
user/luigi/ipfw3-head/sys/ (props changed)
user/luigi/ipfw3-head/sys/amd64/include/xen/ (props changed)
user/luigi/ipfw3-head/sys/cddl/contrib/opensolaris/ (props changed)
user/luigi/ipfw3-head/sys/contrib/dev/acpica/ (props changed)
user/luigi/ipfw3-head/sys/contrib/pf/ (props changed)
user/luigi/ipfw3-head/sys/dev/xen/xenpci/ (props changed)
user/luigi/ipfw3-head/usr.bin/csup/ (props changed)
user/luigi/ipfw3-head/usr.bin/procstat/ (props changed)
user/luigi/ipfw3-head/usr.sbin/zic/ (props changed)
Modified: user/luigi/ipfw3-head/UPDATING
==============================================================================
--- user/luigi/ipfw3-head/UPDATING Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/UPDATING Sun Dec 27 13:56:35 2009 (r201050)
@@ -161,7 +161,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 9.
20090712:
Padding has been added to struct tcpcb, sackhint and tcpstat in
<netinet/tcp_var.h> to facilitate future MFCs and bug fixes whilst
- maintainig the ABI. However, this change breaks the ABI, so bump
+ maintaining the ABI. However, this change breaks the ABI, so bump
__FreeBSD_version to 800102. User space tools that rely on the size of
any of these structs (e.g. sockstat) need to be recompiled.
@@ -895,7 +895,7 @@ COMMON ITEMS:
-------------
Avoid using make -j when upgrading. While generally safe, there are
sometimes problems using -j to upgrade. If your upgrade fails with
- -j, please try again wtihout -j. From time to time in the past there
+ -j, please try again without -j. From time to time in the past there
have been problems using -j with buildworld and/or installworld. This
is especially true when upgrading between "distant" versions (eg one
that cross a major release boundary or several minor releases, or when
Modified: user/luigi/ipfw3-head/bin/setfacl/merge.c
==============================================================================
--- user/luigi/ipfw3-head/bin/setfacl/merge.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/setfacl/merge.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -100,11 +100,10 @@ merge_acl(acl_t acl, acl_t *prev_acl, co
acl_get_brand_np(acl, &acl_brand);
acl_get_brand_np(*prev_acl, &prev_acl_brand);
- if (acl_brand != prev_acl_brand) {
+ if (branding_mismatch(acl_brand, prev_acl_brand)) {
warnx("%s: branding mismatch; existing ACL is %s, "
"entry to be merged is %s", filename,
- prev_acl_brand == ACL_BRAND_NFS4 ? "NFSv4" : "POSIX.1e",
- acl_brand == ACL_BRAND_NFS4 ? "NFSv4" : "POSIX.1e");
+ brand_name(prev_acl_brand), brand_name(acl_brand));
return (-1);
}
@@ -252,9 +251,10 @@ add_acl(acl_t acl, uint entry_number, ac
return (-1);
}
- if (acl_brand != ACL_BRAND_NFS4) {
+ if (branding_mismatch(acl_brand, ACL_BRAND_NFS4)) {
warnx("%s: branding mismatch; existing ACL is NFSv4, "
- "entry to be added is POSIX.1e", filename);
+ "entry to be added is %s", filename,
+ brand_name(acl_brand));
return (-1);
}
Modified: user/luigi/ipfw3-head/bin/setfacl/remove.c
==============================================================================
--- user/luigi/ipfw3-head/bin/setfacl/remove.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/setfacl/remove.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -53,11 +53,10 @@ remove_acl(acl_t acl, acl_t *prev_acl, c
acl_get_brand_np(acl, &acl_brand);
acl_get_brand_np(*prev_acl, &prev_acl_brand);
- if (acl_brand != prev_acl_brand) {
+ if (branding_mismatch(acl_brand, prev_acl_brand)) {
warnx("%s: branding mismatch; existing ACL is %s, "
"entry to be removed is %s", filename,
- prev_acl_brand == ACL_BRAND_NFS4 ? "NFSv4" : "POSIX.1e",
- acl_brand == ACL_BRAND_NFS4 ? "NFSv4" : "POSIX.1e");
+ brand_name(prev_acl_brand), brand_name(acl_brand));
return (-1);
}
Modified: user/luigi/ipfw3-head/bin/setfacl/setfacl.h
==============================================================================
--- user/luigi/ipfw3-head/bin/setfacl/setfacl.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/setfacl/setfacl.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -71,6 +71,8 @@ void remove_ext(acl_t *prev_acl, const
int set_acl_mask(acl_t *prev_acl, const char *filename);
/* util.c */
void *zmalloc(size_t size);
+const char *brand_name(int brand);
+int branding_mismatch(int brand1, int brand2);
uint have_mask;
uint need_mask;
Modified: user/luigi/ipfw3-head/bin/setfacl/util.c
==============================================================================
--- user/luigi/ipfw3-head/bin/setfacl/util.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/setfacl/util.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -43,3 +43,26 @@ zmalloc(size_t size)
err(1, "calloc() failed");
return (ptr);
}
+
+const char *
+brand_name(int brand)
+{
+ switch (brand) {
+ case ACL_BRAND_NFS4:
+ return "NFSv4";
+ case ACL_BRAND_POSIX:
+ return "POSIX.1e";
+ default:
+ return "unknown";
+ }
+}
+
+int
+branding_mismatch(int brand1, int brand2)
+{
+ if (brand1 == ACL_BRAND_UNKNOWN || brand2 == ACL_BRAND_UNKNOWN)
+ return (0);
+ if (brand1 != brand2)
+ return (1);
+ return (0);
+}
Modified: user/luigi/ipfw3-head/bin/sh/alias.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/alias.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/alias.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -52,13 +52,13 @@ __FBSDID("$FreeBSD$");
STATIC struct alias *atab[ATABSIZE];
STATIC int aliases;
-STATIC void setalias(char *, char *);
+STATIC void setalias(const char *, const char *);
STATIC int unalias(const char *);
STATIC struct alias **hashalias(const char *);
STATIC
void
-setalias(char *name, char *val)
+setalias(const char *name, const char *val)
{
struct alias *ap, **app;
@@ -176,7 +176,7 @@ rmaliases(void)
}
struct alias *
-lookupalias(char *name, int check)
+lookupalias(const char *name, int check)
{
struct alias *ap = *hashalias(name);
Modified: user/luigi/ipfw3-head/bin/sh/alias.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/alias.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/alias.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -42,7 +42,7 @@ struct alias {
int flag;
};
-struct alias *lookupalias(char *, int);
+struct alias *lookupalias(const char *, int);
int aliascmd(int, char **);
int unaliascmd(int, char **);
void rmaliases(void);
Modified: user/luigi/ipfw3-head/bin/sh/arith.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/arith.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/arith.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -34,8 +34,8 @@
#define DIGITS(var) (3 + (2 + CHAR_BIT * sizeof((var))) / 3)
-extern char *arith_buf, *arith_startbuf;
+extern const char *arith_buf, *arith_startbuf;
-arith_t arith(char *);
+arith_t arith(const char *);
void arith_lex_reset(void);
int expcmd(int, char **);
Modified: user/luigi/ipfw3-head/bin/sh/arith.y
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/arith.y Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/arith.y Sun Dec 27 13:56:35 2009 (r201050)
@@ -265,7 +265,7 @@ expr:
#define YYPARSE_PARAM_TYPE arith_t *
#define YYPARSE_PARAM result
-char *arith_buf, *arith_startbuf;
+const char *arith_buf, *arith_startbuf;
int yylex(void);
int yyparse(YYPARSE_PARAM_TYPE);
@@ -284,7 +284,7 @@ arith_assign(char *name, arith_t value)
}
arith_t
-arith(char *s)
+arith(const char *s)
{
arith_t result;
@@ -299,7 +299,7 @@ arith(char *s)
}
static void
-yyerror(char *s)
+yyerror(const char *s)
{
yyerrok;
@@ -354,7 +354,7 @@ main(int argc, char *argv[])
printf("%d\n", exp(argv[1]));
}
-error(char *s)
+error(const char *s)
{
fprintf(stderr, "exp: %s\n", s);
exit(1);
Modified: user/luigi/ipfw3-head/bin/sh/cd.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/cd.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/cd.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -80,7 +80,7 @@ int
cdcmd(int argc, char **argv)
{
char *dest;
- char *path;
+ const char *path;
char *p;
struct stat statb;
int ch, phys, print = 0;
Modified: user/luigi/ipfw3-head/bin/sh/error.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/error.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/error.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -67,7 +67,7 @@ volatile sig_atomic_t intpending;
char *commandname;
-static void exverror(int, const char *, va_list) __printf0like(2, 0);
+static void exverror(int, const char *, va_list) __printf0like(2, 0) __dead2;
/*
* Called to raise an exception. Since C doesn't include exceptions, we
Modified: user/luigi/ipfw3-head/bin/sh/error.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/error.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/error.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -78,10 +78,10 @@ extern volatile sig_atomic_t intpending;
#define CLEAR_PENDING_INT intpending = 0
#define int_pending() intpending
-void exraise(int);
+void exraise(int) __dead2;
void onint(void);
-void error(const char *, ...) __printf0like(1, 2);
-void exerror(int, const char *, ...) __printf0like(2, 3);
+void error(const char *, ...) __printf0like(1, 2) __dead2;
+void exerror(int, const char *, ...) __printf0like(2, 3) __dead2;
/*
Modified: user/luigi/ipfw3-head/bin/sh/exec.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/exec.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/exec.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -98,7 +98,7 @@ int exerrno = 0; /* Last exec error */
STATIC void tryexec(char *, char **, char **);
STATIC void printentry(struct tblentry *, int);
-STATIC struct tblentry *cmdlookup(char *, int);
+STATIC struct tblentry *cmdlookup(const char *, int);
STATIC void delete_cmd_entry(void);
@@ -109,7 +109,7 @@ STATIC void delete_cmd_entry(void);
*/
void
-shellexec(char **argv, char **envp, char *path, int index)
+shellexec(char **argv, char **envp, const char *path, int index)
{
char *cmdname;
int e;
@@ -175,13 +175,13 @@ tryexec(char *cmd, char **argv, char **e
* NULL.
*/
-char *pathopt;
+const char *pathopt;
char *
-padvance(char **path, char *name)
+padvance(const char **path, const char *name)
{
- char *p, *q;
- char *start;
+ const char *p, *start;
+ char *q;
int len;
if (*path == NULL)
@@ -269,7 +269,7 @@ STATIC void
printentry(struct tblentry *cmdp, int verbose)
{
int index;
- char *path;
+ const char *path;
char *name;
if (cmdp->cmdtype == CMDNORMAL) {
@@ -310,7 +310,8 @@ printentry(struct tblentry *cmdp, int ve
*/
void
-find_command(char *name, struct cmdentry *entry, int printerr, char *path)
+find_command(const char *name, struct cmdentry *entry, int printerr,
+ const char *path)
{
struct tblentry *cmdp;
int index;
@@ -446,7 +447,7 @@ success:
*/
int
-find_builtin(char *name, int *special)
+find_builtin(const char *name, int *special)
{
const struct builtincmd *bp;
@@ -608,10 +609,10 @@ STATIC struct tblentry **lastcmdentry;
STATIC struct tblentry *
-cmdlookup(char *name, int add)
+cmdlookup(const char *name, int add)
{
int hashval;
- char *p;
+ const char *p;
struct tblentry *cmdp;
struct tblentry **pp;
@@ -664,7 +665,7 @@ delete_cmd_entry(void)
*/
void
-addcmdentry(char *name, struct cmdentry *entry)
+addcmdentry(const char *name, struct cmdentry *entry)
{
struct tblentry *cmdp;
@@ -684,7 +685,7 @@ addcmdentry(char *name, struct cmdentry
*/
void
-defun(char *name, union node *func)
+defun(const char *name, union node *func)
{
struct cmdentry entry;
@@ -701,7 +702,7 @@ defun(char *name, union node *func)
*/
int
-unsetfunc(char *name)
+unsetfunc(const char *name)
{
struct tblentry *cmdp;
@@ -767,7 +768,8 @@ typecmd_impl(int argc, char **argv, int
switch (entry.cmdtype) {
case CMDNORMAL: {
if (strchr(argv[i], '/') == NULL) {
- char *path = pathval(), *name;
+ const char *path = pathval();
+ char *name;
int j = entry.u.index;
do {
name = padvance(&path, argv[i]);
Modified: user/luigi/ipfw3-head/bin/sh/exec.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/exec.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/exec.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -57,20 +57,20 @@ struct cmdentry {
};
-extern char *pathopt; /* set by padvance */
+extern const char *pathopt; /* set by padvance */
extern int exerrno; /* last exec error */
-void shellexec(char **, char **, char *, int);
-char *padvance(char **, char *);
+void shellexec(char **, char **, const char *, int) __dead2;
+char *padvance(const char **, const char *);
int hashcmd(int, char **);
-void find_command(char *, struct cmdentry *, int, char *);
-int find_builtin(char *, int *);
+void find_command(const char *, struct cmdentry *, int, const char *);
+int find_builtin(const char *, int *);
void hashcd(void);
void changepath(const char *);
void deletefuncs(void);
-void addcmdentry(char *, struct cmdentry *);
-void defun(char *, union node *);
-int unsetfunc(char *);
+void addcmdentry(const char *, struct cmdentry *);
+void defun(const char *, union node *);
+int unsetfunc(const char *);
int typecmd_impl(int, char **, int);
int typecmd(int, char **);
void clearcmdentry(int);
Modified: user/luigi/ipfw3-head/bin/sh/expand.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/expand.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/expand.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -107,7 +107,7 @@ STATIC void expmeta(char *, char *);
STATIC void addfname(char *);
STATIC struct strlist *expsort(struct strlist *);
STATIC struct strlist *msort(struct strlist *, int);
-STATIC int pmatch(char *, char *, int);
+STATIC int pmatch(const char *, const char *, int);
STATIC char *cvtnum(int, char *);
STATIC int collate_range_cmp(int, int);
@@ -271,8 +271,13 @@ exptilde(char *p, int flag)
while ((c = *p) != '\0') {
switch(c) {
- case CTLESC:
- return (startp);
+ case CTLESC: /* This means CTL* are always considered quoted. */
+ case CTLVAR:
+ case CTLENDVAR:
+ case CTLBACKQ:
+ case CTLBACKQ | CTLQUOTE:
+ case CTLARI:
+ case CTLENDARI:
case CTLQUOTEMARK:
return (startp);
case ':':
@@ -1338,7 +1343,7 @@ msort(struct strlist *list, int len)
*/
int
-patmatch(char *pattern, char *string, int squoted)
+patmatch(const char *pattern, const char *string, int squoted)
{
#ifdef notdef
if (pattern[0] == '!' && pattern[1] == '!')
@@ -1350,9 +1355,9 @@ patmatch(char *pattern, char *string, in
STATIC int
-pmatch(char *pattern, char *string, int squoted)
+pmatch(const char *pattern, const char *string, int squoted)
{
- char *p, *q;
+ const char *p, *q;
char c;
p = pattern;
@@ -1400,7 +1405,7 @@ pmatch(char *pattern, char *string, int
} while (*q++ != '\0');
return 0;
case '[': {
- char *endp;
+ const char *endp;
int invert, found;
char chr;
@@ -1504,7 +1509,7 @@ rmescapes(char *str)
*/
int
-casematch(union node *pattern, char *val)
+casematch(union node *pattern, const char *val)
{
struct stackmark smark;
int result;
Modified: user/luigi/ipfw3-head/bin/sh/expand.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/expand.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/expand.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -58,7 +58,7 @@ union node;
void expandhere(union node *, int);
void expandarg(union node *, struct arglist *, int);
void expari(int);
-int patmatch(char *, char *, int);
+int patmatch(const char *, const char *, int);
void rmescapes(char *);
-int casematch(union node *, char *);
+int casematch(union node *, const char *);
int wordexpcmd(int, char **);
Modified: user/luigi/ipfw3-head/bin/sh/histedit.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/histedit.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/histedit.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -406,7 +406,7 @@ fc_replace(const char *s, char *p, char
}
int
-not_fcnumber(char *s)
+not_fcnumber(const char *s)
{
if (s == NULL)
return (0);
@@ -416,10 +416,10 @@ not_fcnumber(char *s)
}
int
-str_to_event(char *str, int last)
+str_to_event(const char *str, int last)
{
HistEvent he;
- char *s = str;
+ const char *s = str;
int relative = 0;
int i, retval;
Modified: user/luigi/ipfw3-head/bin/sh/input.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/input.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/input.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -401,7 +401,7 @@ popstring(void)
*/
void
-setinputfile(char *fname, int push)
+setinputfile(const char *fname, int push)
{
int fd;
int fd2;
Modified: user/luigi/ipfw3-head/bin/sh/input.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/input.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/input.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -54,7 +54,7 @@ int preadateof(void);
void pungetc(void);
void pushstring(char *, int, void *);
void popstring(void);
-void setinputfile(char *, int);
+void setinputfile(const char *, int);
void setinputfd(int, int);
void setinputstring(char *, int);
void popfile(void);
Modified: user/luigi/ipfw3-head/bin/sh/jobs.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/jobs.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/jobs.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -757,6 +757,7 @@ forkshell(struct job *jp, union node *n,
TRACE(("Child shell %d\n", (int)getpid()));
wasroot = rootshell;
rootshell = 0;
+ handler = &main_handler;
closescript();
INTON;
clear_traps();
Modified: user/luigi/ipfw3-head/bin/sh/mail.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/mail.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/mail.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -72,7 +72,7 @@ void
chkmail(int silent)
{
int i;
- char *mpath;
+ const char *mpath;
char *p;
char *q;
struct stackmark smark;
Modified: user/luigi/ipfw3-head/bin/sh/main.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/main.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/main.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -75,6 +75,7 @@ __FBSDID("$FreeBSD$");
int rootpid;
int rootshell;
+struct jmploc main_handler;
STATIC void read_profile(char *);
STATIC char *find_dot_file(char *);
@@ -90,14 +91,13 @@ STATIC char *find_dot_file(char *);
int
main(int argc, char *argv[])
{
- struct jmploc jmploc;
struct stackmark smark;
volatile int state;
char *shinit;
(void) setlocale(LC_ALL, "");
state = 0;
- if (setjmp(jmploc.loc)) {
+ if (setjmp(main_handler.loc)) {
/*
* When a shell procedure is executed, we raise the
* exception EXSHELLPROC to clean up before executing
@@ -143,7 +143,7 @@ main(int argc, char *argv[])
else
goto state4;
}
- handler = &jmploc;
+ handler = &main_handler;
#ifdef DEBUG
opentrace();
trputs("Shell args: "); trargs(argv);
@@ -269,7 +269,7 @@ read_profile(char *name)
*/
void
-readcmdfile(char *name)
+readcmdfile(const char *name)
{
int fd;
@@ -296,7 +296,7 @@ find_dot_file(char *basename)
{
static char localname[FILENAME_MAX+1];
char *fullname;
- char *path = pathval();
+ const char *path = pathval();
struct stat statb;
/* don't try this for absolute or relative paths */
Modified: user/luigi/ipfw3-head/bin/sh/main.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/main.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/main.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -35,8 +35,9 @@
extern int rootpid; /* pid of main shell */
extern int rootshell; /* true if we aren't a child of the main shell */
+extern struct jmploc main_handler; /* top level exception handler */
-void readcmdfile(char *);
+void readcmdfile(const char *);
void cmdloop(int);
int dotcmd(int, char **);
int exitcmd(int, char **);
Modified: user/luigi/ipfw3-head/bin/sh/memalloc.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/memalloc.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/memalloc.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -95,7 +95,7 @@ ckfree(pointer p)
*/
char *
-savestr(char *s)
+savestr(const char *s)
{
char *p;
Modified: user/luigi/ipfw3-head/bin/sh/memalloc.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/memalloc.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/memalloc.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -51,7 +51,7 @@ extern int herefd;
pointer ckmalloc(size_t);
pointer ckrealloc(pointer, int);
void ckfree(pointer);
-char *savestr(char *);
+char *savestr(const char *);
pointer stalloc(int);
void stunalloc(pointer);
void setstackmark(struct stackmark *);
Modified: user/luigi/ipfw3-head/bin/sh/myhistedit.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/myhistedit.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/myhistedit.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -39,7 +39,7 @@ extern int displayhist;
void histedit(void);
void sethistsize(const char *);
int histcmd(int, char **);
-int not_fcnumber(char *);
-int str_to_event(char *, int);
+int not_fcnumber(const char *);
+int str_to_event(const char *, int);
int bindcmd(int, char **);
Modified: user/luigi/ipfw3-head/bin/sh/options.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/options.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/options.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -554,9 +554,10 @@ out:
*/
int
-nextopt(char *optstring)
+nextopt(const char *optstring)
{
- char *p, *q;
+ char *p;
+ const char *q;
char c;
if ((p = optptr) == NULL || *p == '\0') {
Modified: user/luigi/ipfw3-head/bin/sh/options.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/options.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/options.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -111,5 +111,5 @@ void freeparam(struct shparam *);
int shiftcmd(int, char **);
int setcmd(int, char **);
int getoptscmd(int, char **);
-int nextopt(char *);
+int nextopt(const char *);
void getoptsreset(const char *);
Modified: user/luigi/ipfw3-head/bin/sh/output.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/output.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/output.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -314,7 +314,7 @@ doformat(struct output *dest, const char
*/
int
-xwrite(int fd, char *buf, int nbytes)
+xwrite(int fd, const char *buf, int nbytes)
{
int ntry;
int i;
Modified: user/luigi/ipfw3-head/bin/sh/output.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/output.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/output.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -52,7 +52,6 @@ extern struct output memout;
extern struct output *out1;
extern struct output *out2;
-void open_mem(char *, int, struct output *);
void out1str(const char *);
void out1qstr(const char *);
void out2str(const char *);
@@ -68,7 +67,7 @@ void out1fmt(const char *, ...) __printf
void out2fmt_flush(const char *, ...) __printflike(1, 2);
void fmtstr(char *, int, const char *, ...) __printflike(3, 4);
void doformat(struct output *, const char *, va_list) __printflike(2, 0);
-int xwrite(int, char *, int);
+int xwrite(int, const char *, int);
#define outc(c, file) (--(file)->nleft < 0? (emptyoutbuf(file), *(file)->nextc++ = (c)) : (*(file)->nextc++ = (c)))
#define out1c(c) outc(c, out1);
Modified: user/luigi/ipfw3-head/bin/sh/parser.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/parser.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/parser.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -1510,9 +1510,9 @@ noexpand(char *text)
*/
int
-goodname(char *name)
+goodname(const char *name)
{
- char *p;
+ const char *p;
p = name;
if (! is_name(*p))
Modified: user/luigi/ipfw3-head/bin/sh/parser.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/parser.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/parser.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -77,5 +77,5 @@ extern int whichprompt; /* 1 == PS1, 2
union node *parsecmd(int);
void fixredir(union node *, const char *, int);
-int goodname(char *);
+int goodname(const char *);
char *getprompt(void *);
Modified: user/luigi/ipfw3-head/bin/sh/show.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/show.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/show.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -307,7 +307,7 @@ sh_trace(const char *fmt, ...)
void
-trputs(char *s)
+trputs(const char *s)
{
if (tracefile == NULL)
return;
Modified: user/luigi/ipfw3-head/bin/sh/show.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/show.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/show.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -35,6 +35,6 @@ void showtree(union node *);
void sh_trace(const char *, ...) __printflike(1, 2);
void trargs(char **);
void trputc(int);
-void trputs(char *);
+void trputs(const char *);
void opentrace(void);
#endif
Modified: user/luigi/ipfw3-head/bin/sh/trap.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/trap.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/trap.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -45,4 +45,4 @@ void ignoresig(int);
void onsig(int);
void dotrap(void);
void setinteractive(int);
-void exitshell(int);
+void exitshell(int) __dead2;
Modified: user/luigi/ipfw3-head/bin/sh/var.c
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/var.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/var.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -122,9 +122,9 @@ STATIC const struct varinit varinit[] =
STATIC struct var *vartab[VTABSIZE];
-STATIC struct var **hashvar(char *);
-STATIC int varequal(char *, char *);
-STATIC int localevar(char *);
+STATIC struct var **hashvar(const char *);
+STATIC int varequal(const char *, const char *);
+STATIC int localevar(const char *);
/*
* Initialize the variable symbol tables and import the environment.
@@ -190,7 +190,7 @@ initvar(void)
*/
int
-setvarsafe(char *name, char *val, int flags)
+setvarsafe(const char *name, const char *val, int flags)
{
struct jmploc jmploc;
struct jmploc *const savehandler = handler;
@@ -215,9 +215,9 @@ setvarsafe(char *name, char *val, int fl
*/
void
-setvar(char *name, char *val, int flags)
+setvar(const char *name, const char *val, int flags)
{
- char *p, *q;
+ const char *p;
int len;
int namelen;
char *nameeq;
@@ -245,19 +245,18 @@ setvar(char *name, char *val, int flags)
} else {
len += strlen(val);
}
- p = nameeq = ckmalloc(len);
- q = name;
- while (--namelen >= 0)
- *p++ = *q++;
- *p++ = '=';
- *p = '\0';
+ nameeq = ckmalloc(len);
+ memcpy(nameeq, name, namelen);
+ nameeq[namelen] = '=';
if (val)
- scopy(val, p);
+ scopy(val, nameeq + namelen + 1);
+ else
+ nameeq[namelen + 1] = '\0';
setvareq(nameeq, flags);
}
STATIC int
-localevar(char *s)
+localevar(const char *s)
{
static char *lnames[7] = {
"ALL", "COLLATE", "CTYPE", "MONETARY",
@@ -283,7 +282,7 @@ localevar(char *s)
* pointer into environ where the string should not be manipulated.
*/
static void
-change_env(char *s, int set)
+change_env(const char *s, int set)
{
char *eqp;
char *ss;
@@ -389,7 +388,7 @@ listsetvar(struct strlist *list)
*/
char *
-lookupvar(char *name)
+lookupvar(const char *name)
{
struct var *v;
@@ -412,7 +411,7 @@ lookupvar(char *name)
*/
char *
-bltinlookup(char *name, int doall)
+bltinlookup(const char *name, int doall)
{
struct strlist *sp;
struct var *v;
@@ -796,7 +795,7 @@ unsetcmd(int argc __unused, char **argv
*/
int
-unsetvar(char *s)
+unsetvar(const char *s)
{
struct var **vpp;
struct var *vp;
@@ -836,7 +835,7 @@ unsetvar(char *s)
*/
STATIC struct var **
-hashvar(char *p)
+hashvar(const char *p)
{
unsigned int hashval;
@@ -855,7 +854,7 @@ hashvar(char *p)
*/
STATIC int
-varequal(char *p, char *q)
+varequal(const char *p, const char *q)
{
while (*p == *q++) {
if (*p++ == '=')
Modified: user/luigi/ipfw3-head/bin/sh/var.h
==============================================================================
--- user/luigi/ipfw3-head/bin/sh/var.h Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/bin/sh/var.h Sun Dec 27 13:56:35 2009 (r201050)
@@ -101,12 +101,12 @@ extern struct var vhistsize;
#define mpathset() ((vmpath.flags & VUNSET) == 0)
void initvar(void);
-void setvar(char *, char *, int);
+void setvar(const char *, const char *, int);
void setvareq(char *, int);
struct strlist;
void listsetvar(struct strlist *);
-char *lookupvar(char *);
-char *bltinlookup(char *, int);
+char *lookupvar(const char *);
+char *bltinlookup(const char *, int);
char **environment(void);
void shprocvar(void);
int showvarscmd(int, char **);
@@ -116,5 +116,5 @@ void mklocal(char *);
void poplocalvars(void);
int setvarcmd(int, char **);
int unsetcmd(int, char **);
-int unsetvar(char *);
-int setvarsafe(char *, char *, int);
+int unsetvar(const char *);
+int setvarsafe(const char *, const char *, int);
Modified: user/luigi/ipfw3-head/contrib/telnet/telnetd/sys_term.c
==============================================================================
--- user/luigi/ipfw3-head/contrib/telnet/telnetd/sys_term.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/contrib/telnet/telnetd/sys_term.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -43,7 +43,6 @@ __FBSDID("$FreeBSD$");
#include <sys/tty.h>
#include <libutil.h>
#include <stdlib.h>
-#include <utmp.h>
#include "telnetd.h"
#include "pathnames.h"
@@ -55,19 +54,6 @@ __FBSDID("$FreeBSD$");
int cleanopen(char *);
void scrub_env(void);
-struct utmp wtmp;
-
-#ifdef _PATH_WTMP
-char wtmpf[] = _PATH_WTMP;
-#else
-char wtmpf[] = "/var/log/wtmp";
-#endif
-#ifdef _PATH_UTMP
-char utmpf[] = _PATH_UTMP;
-#else
-char utmpf[] = "/var/run/utmp";
-#endif
-
char *envinit[3];
extern char **environ;
Modified: user/luigi/ipfw3-head/contrib/top/username.c
==============================================================================
--- user/luigi/ipfw3-head/contrib/top/username.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/contrib/top/username.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -30,17 +30,17 @@
* This makes the table size independent of the passwd file size.
*/
+#include <sys/param.h>
#include <sys/types.h>
#include <stdio.h>
#include <pwd.h>
-#include <utmp.h>
#include "top.local.h"
#include "utils.h"
struct hash_el {
int uid;
- char name[UT_NAMESIZE + 1];
+ char name[MAXLOGNAME];
};
#define is_empty_hash(x) (hash_table[x].name[0] == 0)
@@ -129,7 +129,7 @@ int wecare; /* 1 = enter it always, 0 =
/* empty or wrong slot -- fill it with new value */
hash_table[hashindex].uid = uid;
- (void) strncpy(hash_table[hashindex].name, name, UT_NAMESIZE);
+ (void) strncpy(hash_table[hashindex].name, name, MAXLOGNAME - 1);
return(hashindex);
}
Modified: user/luigi/ipfw3-head/etc/rc.subr
==============================================================================
--- user/luigi/ipfw3-head/etc/rc.subr Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/etc/rc.subr Sun Dec 27 13:56:35 2009 (r201050)
@@ -738,7 +738,7 @@ $command $rc_flags $command_args"
if [ -n "$_nice" ]; then
if [ -z "$_user" ]; then
_doit="sh -c \"$_doit\""
- fi
+ fi
_doit="nice -n $_nice $_doit"
fi
fi
@@ -958,10 +958,11 @@ _run_rc_killcmd()
#
# run_rc_script file arg
# Start the script `file' with `arg', and correctly handle the
-# return value from the script. If `file' ends with `.sh', it's
-# sourced into the current environment. If `file' appears to be
-# a backup or scratch file, ignore it. Otherwise if it's
-# executable run as a child process.
+# return value from the script.
+# If `file' ends with `.sh', it's sourced into the current environment
+# when $rc_fast_and_loose is set, otherwise it is run as a child process.
+# If `file' appears to be a backup or scratch file, ignore it.
+# Otherwise if it is executable run as a child process.
#
run_rc_script()
{
@@ -1063,7 +1064,7 @@ load_rc_config()
esac
done
}
-
+
#
# load_rc_config_var name var
# Read the rc.conf(5) var for name and set in the
Modified: user/luigi/ipfw3-head/lib/libc/posix1e/acl_delete_entry.c
==============================================================================
--- user/luigi/ipfw3-head/lib/libc/posix1e/acl_delete_entry.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/lib/libc/posix1e/acl_delete_entry.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -75,6 +75,7 @@ int
acl_delete_entry(acl_t acl, acl_entry_t entry_d)
{
struct acl *acl_int;
+ struct acl_entry entry_int;
int i, j, found = 0;
if (acl == NULL || entry_d == NULL) {
@@ -94,8 +95,12 @@ acl_delete_entry(acl_t acl, acl_entry_t
errno = EINVAL;
return (-1);
}
+
+ /* Use a local copy to prevent deletion of more than this entry */
+ entry_int = *entry_d;
+
for (i = 0; i < acl->ats_acl.acl_cnt;) {
- if (_entry_matches(&(acl->ats_acl.acl_entry[i]), entry_d)) {
+ if (_entry_matches(&(acl->ats_acl.acl_entry[i]), &entry_int)) {
/* ...shift the remaining entries... */
for (j = i; j < acl->ats_acl.acl_cnt - 1; ++j)
acl->ats_acl.acl_entry[j] =
Modified: user/luigi/ipfw3-head/lib/libpam/modules/pam_lastlog/pam_lastlog.c
==============================================================================
--- user/luigi/ipfw3-head/lib/libpam/modules/pam_lastlog/pam_lastlog.c Sun Dec 27 13:23:14 2009 (r201049)
+++ user/luigi/ipfw3-head/lib/libpam/modules/pam_lastlog/pam_lastlog.c Sun Dec 27 13:56:35 2009 (r201050)
@@ -91,7 +91,7 @@ pam_sm_open_session(pam_handle_t *pamh,
}
if ((flags & PAM_SILENT) == 0) {
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-user
mailing list