From owner-p4-projects@FreeBSD.ORG Fri Sep 1 12:25:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D061216A503; Fri, 1 Sep 2006 12:25:20 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7920E16A4EE for ; Fri, 1 Sep 2006 12:25:20 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA7A043D7C for ; Fri, 1 Sep 2006 12:25:06 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k81CP6ss045411 for ; Fri, 1 Sep 2006 12:25:06 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k81CP3FK045408 for perforce@freebsd.org; Fri, 1 Sep 2006 12:25:03 GMT (envelope-from piso@freebsd.org) Date: Fri, 1 Sep 2006 12:25:03 GMT Message-Id: <200609011225.k81CP3FK045408@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 105457 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Sep 2006 12:25:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=105457 Change 105457 by piso@piso_newluxor on 2006/09/01 12:24:30 IFC Affected files ... .. //depot/projects/soc2005/libalias/MAINTAINERS#3 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/Makefile#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/cmds.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/conf.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/extern.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpcmd.y#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpd.8#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpd.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpd.conf.5#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/logutmp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/logwtmp.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/pathnames.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/popen.c#2 integrate .. //depot/projects/soc2005/libalias/contrib/lukemftpd/src/version.h#2 integrate .. //depot/projects/soc2005/libalias/contrib/openbsm/bsm/audit.h#3 delete .. //depot/projects/soc2005/libalias/contrib/openbsm/bsm/audit_internal.h#3 delete .. //depot/projects/soc2005/libalias/contrib/openbsm/bsm/audit_kevents.h#4 delete .. //depot/projects/soc2005/libalias/contrib/openbsm/bsm/audit_record.h#4 delete .. //depot/projects/soc2005/libalias/contrib/openbsm/libbsm/bsm_token.c#4 integrate .. //depot/projects/soc2005/libalias/etc/Makefile#3 integrate .. //depot/projects/soc2005/libalias/etc/defaults/periodic.conf#3 integrate .. //depot/projects/soc2005/libalias/etc/freebsd-update.conf#1 branch .. //depot/projects/soc2005/libalias/etc/hosts.allow#2 integrate .. //depot/projects/soc2005/libalias/etc/inetd.conf#2 integrate .. //depot/projects/soc2005/libalias/etc/mtree/BSD.var.dist#2 integrate .. //depot/projects/soc2005/libalias/etc/periodic/weekly/120.clean-kvmdb#2 delete .. //depot/projects/soc2005/libalias/etc/periodic/weekly/Makefile#2 integrate .. //depot/projects/soc2005/libalias/etc/phones#2 integrate .. //depot/projects/soc2005/libalias/lib/libarchive/archive_read_support_compression_none.c#3 integrate .. //depot/projects/soc2005/libalias/lib/libbsm/Makefile#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/ia64/gen/_set_tp.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libc/powerpc/gen/_set_tp.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/arch/ia64/ia64/pthread_md.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/arch/ia64/include/pthread_md.h#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/arch/powerpc/include/pthread_md.h#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/arch/powerpc/powerpc/pthread_md.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_create.c#3 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_init.c#4 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_mutex.c#4 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_mutex_prioceiling.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_mutex_protocol.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_private.h#4 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_seterrno.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_sigmask.c#2 delete .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_umtx.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_umtx.h#2 integrate .. //depot/projects/soc2005/libalias/libexec/lukemftpd/nbsd2fbsd.h#2 integrate .. //depot/projects/soc2005/libalias/libexec/lukemftpd/nbsd_pidfile.h#1 branch .. //depot/projects/soc2005/libalias/libexec/lukemftpd/pamize.h#2 delete .. //depot/projects/soc2005/libalias/libexec/rtld-elf/ia64/reloc.c#2 integrate .. //depot/projects/soc2005/libalias/libexec/rtld-elf/ia64/rtld_machdep.h#2 integrate .. //depot/projects/soc2005/libalias/libexec/save-entropy/save-entropy.sh#2 integrate .. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#7 integrate .. //depot/projects/soc2005/libalias/release/scripts/kernels-install.sh#2 integrate .. //depot/projects/soc2005/libalias/release/scripts/lib32-install.sh#1 branch .. //depot/projects/soc2005/libalias/release/scripts/proflibs-install.sh#2 integrate .. //depot/projects/soc2005/libalias/share/man/man4/ixgb.4#3 integrate .. //depot/projects/soc2005/libalias/share/man/man4/sio.4#2 integrate .. //depot/projects/soc2005/libalias/share/man/man5/Makefile#2 integrate .. //depot/projects/soc2005/libalias/share/man/man5/freebsd-update.conf.5#1 branch .. //depot/projects/soc2005/libalias/share/man/man5/periodic.conf.5#2 integrate .. //depot/projects/soc2005/libalias/share/man/man8/Makefile#2 integrate .. //depot/projects/soc2005/libalias/share/man/man8/nanobsd.8#1 branch .. //depot/projects/soc2005/libalias/share/man/man9/bus_dma.9#2 integrate .. //depot/projects/soc2005/libalias/sys/amd64/amd64/support.S#4 integrate .. //depot/projects/soc2005/libalias/sys/amd64/linux32/linux32_machdep.c#5 integrate .. //depot/projects/soc2005/libalias/sys/arm/arm/fusu.S#2 integrate .. //depot/projects/soc2005/libalias/sys/arm/arm/pmap.c#4 integrate .. //depot/projects/soc2005/libalias/sys/arm/at91/at91.c#2 integrate .. //depot/projects/soc2005/libalias/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/soc2005/libalias/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/soc2005/libalias/sys/arm/include/asm.h#2 integrate .. //depot/projects/soc2005/libalias/sys/bsm/audit_record.h#4 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_emul.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/em/if_em.c#6 integrate .. //depot/projects/soc2005/libalias/sys/dev/em/if_em.h#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/fdc/fdc.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_freebsd.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_freebsd.h#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_pci.c#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/isp/isp_sbus.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/mii/brgphy.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/mii/miidevs#3 integrate .. //depot/projects/soc2005/libalias/sys/i386/i386/support.s#3 integrate .. //depot/projects/soc2005/libalias/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/soc2005/libalias/sys/kern/init_sysent.c#5 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_exec.c#3 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_thread.c#3 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_umtx.c#3 integrate .. //depot/projects/soc2005/libalias/sys/kern/syscalls.c#5 integrate .. //depot/projects/soc2005/libalias/sys/kern/syscalls.master#6 integrate .. //depot/projects/soc2005/libalias/sys/kern/systrace_args.c#2 integrate .. //depot/projects/soc2005/libalias/sys/modules/Makefile#7 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_fw2.c#12 integrate .. //depot/projects/soc2005/libalias/sys/nfsclient/nfs_socket.c#3 integrate .. //depot/projects/soc2005/libalias/sys/pci/agp_ati.c#2 integrate .. //depot/projects/soc2005/libalias/sys/powerpc/powerpc/copyinout.c#2 integrate .. //depot/projects/soc2005/libalias/sys/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit.c#2 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit.h#3 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_bsm.c#4 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_bsm_token.c#3 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_private.h#2 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit_syscalls.c#2 integrate .. //depot/projects/soc2005/libalias/sys/sparc64/sparc64/support.S#2 integrate .. //depot/projects/soc2005/libalias/sys/sys/sx.h#3 integrate .. //depot/projects/soc2005/libalias/sys/sys/syscall.h#5 integrate .. //depot/projects/soc2005/libalias/sys/sys/syscall.mk#5 integrate .. //depot/projects/soc2005/libalias/sys/sys/sysproto.h#5 integrate .. //depot/projects/soc2005/libalias/sys/sys/systm.h#4 integrate .. //depot/projects/soc2005/libalias/sys/sys/umtx.h#3 integrate .. //depot/projects/soc2005/libalias/tools/tools/ministat/ministat.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/less/lesspipe.sh#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/NEWS#2 delete .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/biz22.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/biz31.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/courier.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/df.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/dn11.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/hayes.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/t3000.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/v3451.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/v831.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/libacu/ventel.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/Makefile#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/acu.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/acutab.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/cmds.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/cmdtab.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/cu.1#1 branch .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/cu.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/hunt.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/log.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/partab.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/pathnames.h#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/remote.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/tip.1#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/tip.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/tip.h#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/tipout.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/uucplock.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/value.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/tip/tip/vars.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/vgrind/vgrind.1#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/Makefile#5 integrate .. //depot/projects/soc2005/libalias/usr.sbin/freebsd-update/Makefile#1 branch .. //depot/projects/soc2005/libalias/usr.sbin/freebsd-update/freebsd-update.8#1 branch .. //depot/projects/soc2005/libalias/usr.sbin/freebsd-update/freebsd-update.sh#1 branch .. //depot/projects/soc2005/libalias/usr.sbin/sysinstall/config.c#2 integrate Differences ... ==== //depot/projects/soc2005/libalias/MAINTAINERS#3 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.139 2006/07/11 06:09:54 mjacob Exp $ +$FreeBSD: src/MAINTAINERS,v 1.140 2006/08/31 09:51:33 cperciva Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -118,6 +118,7 @@ linux emul emulation Please discuss changes here. bs{diff,patch} cperciva Pre-commit review requested. portsnap cperciva Pre-commit review requested. +freebsd-update cperciva Pre-commit review requested. sys/netgraph/bluetooth emax Pre-commit review preferred. lib/libbluetooth emax Pre-commit review preferred. lib/libsdp emax Pre-commit review preferred. ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/Makefile#2 (text+ko) ==== @@ -1,11 +1,11 @@ -# $NetBSD: Makefile,v 1.51 2003-07-23 08:01:27 itojun Exp $ +# $NetBSD: Makefile,v 1.56 2006/03/23 20:14:16 wiz Exp $ # @(#)Makefile 8.2 (Berkeley) 4/4/94 .include PROG= ftpd SRCS= cmds.c conf.c ftpd.c ftpcmd.y logutmp.c logwtmp.c popen.c -CPPFLAGS+=-I${.CURDIR} -DSUPPORT_UTMP -DSUPPORT_UTMPX +CPPFLAGS+=-I${.CURDIR} -DSUPPORT_UTMP -DSUPPORT_UTMPX -DLOGIN_CAP DPADD+= ${LIBCRYPT} ${LIBUTIL} LDADD+= -lcrypt -lutil MAN= ftpd.conf.5 ftpusers.5 ftpd.8 @@ -15,8 +15,9 @@ SRCS+= ls.c cmp.c print.c stat_flags.c util.c .PATH: ${NETBSDSRCDIR}/bin/ls +.if (${USE_INET6} != "no") CPPFLAGS+=-DINET6 -.include +.endif WARNS=2 @@ -25,6 +26,11 @@ DPADD+= ${LIBSKEY} LDADD+= -lskey .endif +.if (${USE_PAM} != "no") +CPPFLAGS+=-DUSE_PAM +DPADD+= ${LIBPAM} ${PAM_STATIC_DPADD} +LDADD+= -lpam ${PAM_STATIC_LDADD} +.endif ftpd.o ftpcmd.o: version.h @@ -38,13 +44,8 @@ #DPADD+= ${LIBKRB5} ${LIBASN1} #LDADD+= -lkrb5 -lasn1 # -#SRCS+= klogin.c -#CPPFLAGS+=-DKERBEROS -I${DESTDIR}/usr/include/kerberosIV -#DPADD+= ${LIBKRB} -#LDADD+= -lkrb -# -#DPADD+= ${LIBCRYPTO} ${LIBROKEN} ${LIBCOM_ERR} -#LDADD+= -lcrypto -lroken -lcom_err +#DPADD+= ${LIBCRYPTO} ${{LIBCRYPT} ${LIBROKEN} ${LIBCOM_ERR} +#LDADD+= -lcrypto -lcrypt -lroken -lcom_err # #.endif ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/cmds.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: cmds.c,v 1.23 2004-08-09 12:56:47 lukem Exp $ */ +/* $NetBSD: cmds.c,v 1.24 2006/02/01 14:20:12 christos Exp $ */ /* * Copyright (c) 1999-2004 The NetBSD Foundation, Inc. @@ -97,7 +97,7 @@ #include #ifndef lint -__RCSID("$NetBSD: cmds.c,v 1.23 2004-08-09 12:56:47 lukem Exp $"); +__RCSID("$NetBSD: cmds.c,v 1.24 2006/02/01 14:20:12 christos Exp $"); #endif /* not lint */ #include @@ -391,7 +391,7 @@ /* default cases */ if (ep != NULL && *ep != '\0') - REASSIGN(c->options, xstrdup(ep)); + REASSIGN(c->options, ftpd_strdup(ep)); if (c->options != NULL) reply(200, "Options for %s are '%s'.", c->name, c->options); @@ -438,7 +438,7 @@ return (NULL); } reply(350, "File exists, ready for destination name"); - return (xstrdup(name)); + return (ftpd_strdup(name)); } void ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/conf.c#2 (text+ko) ==== @@ -1,7 +1,7 @@ -/* $NetBSD: conf.c,v 1.52 2004-08-09 12:56:47 lukem Exp $ */ +/* $NetBSD: conf.c,v 1.57 2006/02/01 14:20:12 christos Exp $ */ /*- - * Copyright (c) 1997-2004 The NetBSD Foundation, Inc. + * Copyright (c) 1997-2005 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation @@ -38,7 +38,7 @@ #include #ifndef lint -__RCSID("$NetBSD: conf.c,v 1.52 2004-08-09 12:56:47 lukem Exp $"); +__RCSID("$NetBSD: conf.c,v 1.57 2006/02/01 14:20:12 christos Exp $"); #endif /* not lint */ #include @@ -77,7 +77,7 @@ #define DEFAULT_MAXFILESIZE -1 /* unlimited file size */ #define DEFAULT_MAXTIMEOUT 7200 /* 2 hours */ #define DEFAULT_TIMEOUT 900 /* 15 minutes */ -#define DEFAULT_UMASK 027 /* 15 minutes */ +#define DEFAULT_UMASK 027 /* rw-r----- */ /* * Initialise curclass to an `empty' state @@ -109,7 +109,7 @@ curclass.maxrateget = 0; curclass.maxrateput = 0; curclass.maxtimeout = DEFAULT_MAXTIMEOUT; - REASSIGN(curclass.motd, xstrdup(_PATH_FTPLOGINMESG)); + REASSIGN(curclass.motd, ftpd_strdup(_NAME_FTPLOGINMESG)); REASSIGN(curclass.notify, NULL); curclass.portmin = 0; curclass.portmax = 0; @@ -126,6 +126,7 @@ CURCLASS_FLAGS_SET(checkportcmd); CURCLASS_FLAGS_CLR(denyquick); + CURCLASS_FLAGS_CLR(hidesymlinks); CURCLASS_FLAGS_SET(modify); CURCLASS_FLAGS_SET(passive); CURCLASS_FLAGS_CLR(private); @@ -152,14 +153,14 @@ struct ftpconv *conv, *cnext; init_curclass(); - REASSIGN(curclass.classname, xstrdup(findclass)); + REASSIGN(curclass.classname, ftpd_strdup(findclass)); /* set more guest defaults */ if (strcasecmp(findclass, "guest") == 0) { CURCLASS_FLAGS_CLR(modify); curclass.umask = 0707; } - infile = conffilename(_PATH_FTPDCONF); + infile = conffilename(_NAME_FTPDCONF); if ((f = fopen(infile, "r")) == NULL) return; @@ -205,7 +206,7 @@ if (none || EMPTYSTR(arg)) \ arg = NULL; \ else \ - arg = xstrdup(arg); \ + arg = ftpd_strdup(arg); \ REASSIGN(curclass.Field, arg); \ } while (0) @@ -310,16 +311,16 @@ convcmd = p; if (convcmd) convcmd += strspn(convcmd, " \t"); - suffix = xstrdup(arg); + suffix = ftpd_strdup(arg); if (none || EMPTYSTR(types) || EMPTYSTR(disable) || EMPTYSTR(convcmd)) { types = NULL; disable = NULL; convcmd = NULL; } else { - types = xstrdup(types); - disable = xstrdup(disable); - convcmd = xstrdup(convcmd); + types = ftpd_strdup(types); + disable = ftpd_strdup(disable); + convcmd = ftpd_strdup(convcmd); } for (conv = curclass.conversions; conv != NULL; conv = conv->next) { @@ -354,6 +355,9 @@ } else if (strcasecmp(word, "display") == 0) { CONF_STRING(display); + } else if (strcasecmp(word, "hidesymlinks") == 0) { + CONF_FLAG(hidesymlinks); + } else if (strcasecmp(word, "homedir") == 0) { CONF_STRING(homedir); @@ -362,7 +366,7 @@ REASSIGN(curclass.limitfile, NULL); CONF_LL(limit, arg, -1, LLTMAX); REASSIGN(curclass.limitfile, - EMPTYSTR(p) ? NULL : xstrdup(p)); + EMPTYSTR(p) ? NULL : ftpd_strdup(p)); } else if (strcasecmp(word, "maxfilesize") == 0) { curclass.maxfilesize = DEFAULT_MAXFILESIZE; @@ -385,6 +389,10 @@ curclass.writesize = 0; CONF_LL(writesize, arg, 0, LLTMAX); + } else if (strcasecmp(word, "recvbufsize") == 0) { + curclass.recvbufsize = 0; + CONF_LL(recvbufsize, arg, 0, LLTMAX); + } else if (strcasecmp(word, "sendbufsize") == 0) { curclass.sendbufsize = 0; CONF_LL(sendbufsize, arg, 0, LLTMAX); @@ -464,7 +472,7 @@ } else if (strcasecmp(word, "template") == 0) { if (none) continue; - REASSIGN(template, EMPTYSTR(arg) ? NULL : xstrdup(arg)); + REASSIGN(template, EMPTYSTR(arg) ? NULL : ftpd_strdup(arg)); } else if (strcasecmp(word, "umask") == 0) { u_long fumask; @@ -547,7 +555,7 @@ if (sl_find(slist, curwd) != NULL) return; - cp = xstrdup(curwd); + cp = ftpd_strdup(curwd); if (sl_add(slist, cp) == -1) syslog(LOG_WARNING, "can't add `%s' to stringlist", cp); @@ -846,13 +854,13 @@ /* Split up command into an argv */ if ((sl = sl_init()) == NULL) goto cleanup_do_conv; - cmd = xstrdup(cp->command); + cmd = ftpd_strdup(cp->command); p = cmd; while (p) { NEXTWORD(p, lp); if (strcmp(lp, "%s") == 0) lp = base; - if (sl_add(sl, xstrdup(lp)) == -1) + if (sl_add(sl, ftpd_strdup(lp)) == -1) goto cleanup_do_conv; } ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/extern.h#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: extern.h,v 1.50 2004-08-09 12:56:47 lukem Exp $ */ +/* $NetBSD: extern.h,v 1.55 2006/02/01 14:20:12 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -32,7 +32,7 @@ */ /*- - * Copyright (c) 1997-2004 The NetBSD Foundation, Inc. + * Copyright (c) 1997-2005 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation @@ -174,22 +174,27 @@ void statxfer(void); void store(const char *, const char *, int); void user(const char *); -char *xstrdup(const char *); +char *ftpd_strdup(const char *); void yyerror(char *); #ifdef SUPPORT_UTMP struct utmp; +void ftpd_initwtmp(void); void ftpd_logwtmp(const char *, const char *, const char *); -void ftpd_login(const struct utmp *ut); -int ftpd_logout(const char *line); +void ftpd_login(const struct utmp *); +int ftpd_logout(const char *); #endif #ifdef SUPPORT_UTMPX struct utmpx; +struct sockinet; +void ftpd_initwtmpx(void); +void ftpd_logwtmpx(const char *, const char *, const char *, + struct sockinet *, int, int); void ftpd_loginx(const struct utmpx *); -void ftpd_logwtmpx(const char *, const char *, const char *, int, int); +int ftpd_logoutx(const char *, int, int); #endif #include @@ -251,12 +256,15 @@ typedef enum { FLAG_checkportcmd = 1<<0, /* Check port commands */ FLAG_denyquick = 1<<1, /* Check ftpusers(5) before PASS */ - FLAG_modify = 1<<2, /* Allow CHMOD, DELE, MKD, RMD, RNFR, + FLAG_hidesymlinks = 1<<2, /* For symbolic links, list the file + or directory the link references + rather than the link itself */ + FLAG_modify = 1<<3, /* Allow CHMOD, DELE, MKD, RMD, RNFR, UMASK */ - FLAG_passive = 1<<3, /* Allow PASV mode */ - FLAG_private = 1<<4, /* Don't publish class info in STAT */ - FLAG_sanenames = 1<<5, /* Restrict names of uploaded files */ - FLAG_upload = 1<<6, /* As per modify, but also allow + FLAG_passive = 1<<4, /* Allow PASV mode */ + FLAG_private = 1<<5, /* Don't publish class info in STAT */ + FLAG_sanenames = 1<<6, /* Restrict names of uploaded files */ + FLAG_upload = 1<<7, /* As per modify, but also allow APPE, STOR, STOU */ } classflag_t; @@ -290,6 +298,7 @@ LLT mmapsize; /* mmap window size */ LLT readsize; /* data read size */ LLT writesize; /* data write size */ + LLT recvbufsize; /* SO_RCVBUF size */ LLT sendbufsize; /* SO_SNDBUF size */ LLT sendlowat; /* SO_SNDLOWAT size */ }; @@ -309,7 +318,7 @@ GLOBAL struct sockinet pasv_addr; GLOBAL int connections; GLOBAL struct ftpclass curclass; -GLOBAL int debug; +GLOBAL int ftpd_debug; GLOBAL char *emailaddr; GLOBAL int form; GLOBAL int gidcount; /* number of entries in gidlist[] */ ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpcmd.y#2 (text+ko) ==== @@ -1,7 +1,7 @@ -/* $NetBSD: ftpcmd.y,v 1.80 2004-08-09 12:56:47 lukem Exp $ */ +/* $NetBSD: ftpcmd.y,v 1.84 2006/02/01 14:20:12 christos Exp $ */ /*- - * Copyright (c) 1997-2004 The NetBSD Foundation, Inc. + * Copyright (c) 1997-2005 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation @@ -79,7 +79,7 @@ #if 0 static char sccsid[] = "@(#)ftpcmd.y 8.3 (Berkeley) 4/6/94"; #else -__RCSID("$NetBSD: ftpcmd.y,v 1.80 2004-08-09 12:56:47 lukem Exp $"); +__RCSID("$NetBSD: ftpcmd.y,v 1.84 2006/02/01 14:20:12 christos Exp $"); #endif #endif /* not lint */ @@ -118,6 +118,14 @@ char *cmdp; char *fromname; +extern int epsvall; +struct tab sitetab[]; + +static int check_write(const char *, int); +static void help(struct tab *, const char *); +static void port_check(const char *, int); + int yylex(void); + %} %union { @@ -503,6 +511,8 @@ { char *argv[] = { INTERNAL_LS, "-lgA", NULL }; + if (CURCLASS_FLAGS_ISSET(hidesymlinks)) + argv[1] = "-LlgA"; if ($2) retrieve(argv, ""); } @@ -511,6 +521,8 @@ { char *argv[] = { INTERNAL_LS, "-lgA", NULL, NULL }; + if (CURCLASS_FLAGS_ISSET(hidesymlinks)) + argv[1] = "-LlgA"; if ($2 && $4 != NULL) { argv[2] = $4; retrieve(argv, $4); @@ -1293,13 +1305,6 @@ { NULL, 0, 0, 0, NULL } }; -static int check_write(const char *, int); -static void help(struct tab *, const char *); -static void port_check(const char *, int); - int yylex(void); - -extern int epsvall; - /* * Check if a filename is allowed to be modified (isupload == 0) or * uploaded (isupload == 1), and if necessary, check the filename is `sane'. @@ -1333,7 +1338,7 @@ if (file[0] == '.') goto insane_name; for (p = file; *p; p++) { - if (isalnum(*p) || *p == '-' || *p == '+' || + if (isalnum((unsigned char)*p) || *p == '-' || *p == '+' || *p == ',' || *p == '.' || *p == '_') continue; insane_name: @@ -1371,7 +1376,7 @@ *cs++ = tmpline[c]; if (tmpline[c] == '\n') { *cs++ = '\0'; - if (debug) + if (ftpd_debug) syslog(LOG_DEBUG, "command: %s", s); tmpline[0] = '\0'; return(s); @@ -1419,7 +1424,7 @@ if (c == EOF && cs == s) return (NULL); *cs++ = '\0'; - if (debug) { + if (ftpd_debug) { if ((curclass.type != CLASS_GUEST && strncasecmp(s, "PASS ", 5) == 0) || strncasecmp(s, "ACCT ", 5) == 0) { @@ -1571,7 +1576,7 @@ */ if (n > 1 && cmdp[cpos] == '\n') { cmdp[cpos] = '\0'; - yylval.s = xstrdup(cp); + yylval.s = ftpd_strdup(cp); cmdp[cpos] = '\n'; state = ARGS; return (STRING); @@ -1583,9 +1588,9 @@ cpos++; return (SP); } - if (isdigit(cmdp[cpos])) { + if (isdigit((unsigned char)cmdp[cpos])) { cp = &cmdp[cpos]; - while (isdigit(cmdp[++cpos])) + while (isdigit((unsigned char)cmdp[++cpos])) ; c = cmdp[cpos]; cmdp[cpos] = '\0'; @@ -1598,9 +1603,9 @@ goto dostr1; case ARGS: - if (isdigit(cmdp[cpos])) { + if (isdigit((unsigned char)cmdp[cpos])) { cp = &cmdp[cpos]; - while (isdigit(cmdp[++cpos])) + while (isdigit((unsigned char)cmdp[++cpos])) ; c = cmdp[cpos]; cmdp[cpos] = '\0'; @@ -1610,7 +1615,7 @@ return (NUMBER); } if (strncasecmp(&cmdp[cpos], "ALL", 3) == 0 - && !isalnum(cmdp[cpos + 3])) { + && !isalnum((unsigned char)cmdp[cpos + 3])) { cpos += 3; return (ALL); } ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpd.8#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $NetBSD: ftpd.8,v 1.74 2003-08-07 09:46:39 agc Exp $ +.\" $NetBSD: ftpd.8,v 1.76 2005/08/07 11:13:34 wiz Exp $ .\" .\" Copyright (c) 1997-2003 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -63,7 +63,7 @@ .\" .\" @(#)ftpd.8 8.2 (Berkeley) 4/19/94 .\" -.Dd February 26, 2003 +.Dd August 4, 2005 .Dt FTPD 8 .Os .Sh NAME @@ -72,10 +72,10 @@ Internet File Transfer Protocol server .Sh SYNOPSIS .Nm -.Op Fl dHlqQrsuUwWX +.Op Fl 46DdHlQqrsUuWwX .Op Fl a Ar anondir +.Op Fl C Ar user .Op Fl c Ar confdir -.Op Fl C Ar user .Op Fl e Ar emailaddr .Op Fl h Ar hostname .Op Fl L Ar xferlogfile @@ -93,6 +93,14 @@ .Pp Available options: .Bl -tag -width Ds +.It Fl 4 +When +.Fl D +is specified, bind to IPv4 addresses only. +.It Fl 6 +When +.Fl D +is specified, bind to IPv6 addresses only. .It Fl a Ar anondir Define .Ar anondir @@ -104,6 +112,16 @@ .Xr ftpd.conf 5 .Sy chroot directive. +.It Fl C Ar user +Check whether +.Ar user +would be granted access under +the restrictions given in +.Xr ftpusers 5 +and exit without attempting a connection. +.Nm +exits with an exit code of 0 if access would be granted, or 1 otherwise. +This can be useful for testing configurations. .It Fl c Ar confdir Change the root directory of the configuration files from .Dq Pa /etc @@ -118,16 +136,16 @@ .Xr ftpd.conf 5 .Sy limit directive. -.It Fl C Ar user -Check whether -.Ar user -would be granted access under -the restrictions given in -.Xr ftpusers 5 -and exit without attempting a connection. +.It Fl D +Run as daemon. +.Nm +will listen on the default FTP port for incoming connections +and fork a child for each connection. +This is lower overhead than starting .Nm -exits with an exit code of 0 if access would be granted, or 1 otherwise. -This can be useful for testing configurations. +from +.Xr inetd 8 +and thus might be useful on busy servers to reduce load. .It Fl d Debugging information is written to the syslog using a facility of .Dv LOG_FTP . @@ -138,6 +156,12 @@ .Dq "\&%E" escape sequence (see .Sx Display file escape sequences ) +.It Fl H +Equivalent to +.Do +-h +`hostname` +.Dc . .It Fl h Ar hostname Explicitly set the hostname to advertise as to .Ar hostname . @@ -155,12 +179,13 @@ Refer to .Xr inetd.conf 5 for more information on starting services to listen on specific IP addresses. -.It Fl H -Equivalent to -.Do --h -`hostname` -.Dc . +.It Fl L Ar xferlogfile +Log +.Tn wu-ftpd +style +.Sq xferlog +entries to +.Ar xferlogfile . .It Fl l Each successful and failed .Tn FTP @@ -169,13 +194,6 @@ If this option is specified more than once, the retrieve (get), store (put), append, delete, make directory, remove directory and rename operations and their file name arguments are also logged. -.It Fl L Ar xferlogfile -Log -.Tn wu-ftpd -style -.Sq xferlog -entries to -.Ar xferlogfile . .It Fl P Ar dataport Use .Ar dataport @@ -183,16 +201,16 @@ that the port .Nm is listening on. -.It Fl q -Enable the use of pid files for keeping track of the number of logged-in -users per class. -This is the default. .It Fl Q Disable the use of pid files for keeping track of the number of logged-in users per class. This may reduce the load on heavily loaded .Tn FTP servers. +.It Fl q +Enable the use of pid files for keeping track of the number of logged-in +users per class. +This is the default. .It Fl r Permanently drop root privileges once the user is logged in. The use of this option may result in the server using a port other @@ -206,6 +224,12 @@ below for more details. .It Fl s Require a secure authentication mechanism like Kerberos or S/Key to be used. +.It Fl U +Don't log each concurrent +.Tn FTP +session to +.Pa /var/run/utmp . +This is the default. .It Fl u Log each concurrent .Tn FTP @@ -213,12 +237,6 @@ .Pa /var/run/utmp , making them visible to commands such as .Xr who 1 . -.It Fl U -Don't log each concurrent -.Tn FTP -session to -.Pa /var/run/utmp . -This is the default. .It Fl V Ar version Use .Ar version @@ -232,6 +250,11 @@ is empty or .Sq - then don't display any version information. +.It Fl W +Don't log each +.Tn FTP +session to +.Pa /var/log/wtmp . .It Fl w Log each .Tn FTP @@ -240,11 +263,6 @@ making them visible to commands such as .Xr last 1 . This is the default. -.It Fl W -Don't log each -.Tn FTP -session to -.Pa /var/log/wtmp . .It Fl X Log .Tn wu-ftpd ==== //depot/projects/soc2005/libalias/contrib/lukemftpd/src/ftpd.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: ftpd.c,v 1.158 2004-08-09 12:56:47 lukem Exp $ */ +/* $NetBSD: ftpd.c,v 1.176 2006/05/09 20:18:06 mrg Exp $ */ /* * Copyright (c) 1997-2004 The NetBSD Foundation, Inc. @@ -105,10 +105,10 @@ #if 0 static char sccsid[] = "@(#)ftpd.c 8.5 (Berkeley) 4/28/95"; #else -__RCSID("$NetBSD: ftpd.c,v 1.158 2004-08-09 12:56:47 lukem Exp $"); +__RCSID("$NetBSD: ftpd.c,v 1.176 2006/05/09 20:18:06 mrg Exp $"); #endif +__FBSDID("$FreeBSD: src/contrib/lukemftpd/src/ftpd.c,v 1.5 2006/08/31 17:08:21 obrien Exp $"); #endif /* not lint */ -__FBSDID("$FreeBSD: src/contrib/lukemftpd/src/ftpd.c,v 1.4 2004/08/18 06:34:20 obrien Exp $"); /* * FTP server. @@ -141,6 +141,7 @@ #include #include #include +#include #include #include #include @@ -164,19 +165,27 @@ #include #include #endif -#ifdef LOGIN_CAP + +#ifdef LOGIN_CAP #include #endif +#ifdef USE_PAM +#include +#endif + #define GLOBAL #include "extern.h" #include "pathnames.h" #include "version.h" +#include "nbsd_pidfile.h" + volatile sig_atomic_t transflag; volatile sig_atomic_t urgflag; int data; +int Dflag; int sflag; int stru; /* avoid C keyword */ int mode; @@ -191,6 +200,12 @@ off_t file_size; off_t byte_count; static char ttyline[20]; + +#ifdef USE_PAM +static int auth_pam(struct passwd **, const char *); +pam_handle_t *pamh = NULL; +#endif + #ifdef SUPPORT_UTMP static struct utmp utmp; /* for utmp */ #endif @@ -233,7 +248,6 @@ SS_DATA_ERROR /* data send error */ }; - #ifdef USE_OPIE #include static struct opie opiedata; @@ -241,13 +255,6 @@ static int pwok; #endif -#ifdef USE_PAM -#include -pam_handle_t *pamh = NULL; -#include "pamize.h" -#endif - - static int bind_pasv_addr(void); static int checkuser(const char *, const char *, int, int, char **); static int checkaccess(const char *); @@ -255,7 +262,8 @@ static void end_login(void); static FILE *getdatasock(const char *); static char *gunique(const char *); -static void login_utmp(const char *, const char *, const char *); +static void login_utmp(const char *, const char *, const char *, + struct sockinet *); static void logremotehost(struct sockinet *); static void lostconn(int); static void toolong(int); @@ -288,7 +296,8 @@ int main(int argc, char *argv[]) { - int addrlen, ch, on = 1, tos, keepalive; + int ch, on = 1, tos, keepalive; + socklen_t addrlen; #ifdef KERBEROS5 krb5_error_code kerror; #endif @@ -296,11 +305,13 @@ const char *xferlogname = NULL; long l; struct sigaction sa; + sa_family_t af = AF_UNSPEC; connections = 1; - debug = 0; + ftpd_debug = 0; logging = 0; pdata = -1; + Dflag = 0; sflag = 0; dataport = 0; dopidfile = 1; /* default: DO use a pid file to count users */ @@ -324,9 +335,17 @@ */ openlog("ftpd", LOG_PID | LOG_NDELAY, LOG_FTP); - while ((ch = getopt(argc, argv, "a:c:C:de:h:HlL:P:qQrst:T:uUvV:wWX")) - != -1) { + while ((ch = getopt(argc, argv, + "46a:c:C:Dde:h:HlL:P:qQrst:T:uUvV:wWX")) != -1) { switch (ch) { >>> TRUNCATED FOR MAIL (1000 lines) <<<