PERFORCE change 142274 for review

John Birrell jb at FreeBSD.org
Sun May 25 20:58:53 UTC 2008


http://perforce.freebsd.org/chv.cgi?CH=142274

Change 142274 by jb at freebsd3 on 2008/05/25 20:58:34

	IF7

Affected files ...

.. //depot/projects/dtrace7/src/Makefile#4 integrate
.. //depot/projects/dtrace7/src/etc/rc.d/dhclient#4 integrate
.. //depot/projects/dtrace7/src/etc/rc.d/hostid#2 integrate
.. //depot/projects/dtrace7/src/etc/rc.d/ntpd#2 integrate
.. //depot/projects/dtrace7/src/etc/rc.subr#2 integrate
.. //depot/projects/dtrace7/src/gnu/usr.bin/man/TODO#2 integrate
.. //depot/projects/dtrace7/src/gnu/usr.bin/man/lib/util.c#2 integrate
.. //depot/projects/dtrace7/src/gnu/usr.bin/man/man/man.c#2 integrate
.. //depot/projects/dtrace7/src/include/readpassphrase.h#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/Makefile#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive.h.in#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_entry.3#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_entry.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_entry.h#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_platform.h#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_read.3#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_read_support_format_ar.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_read_support_format_mtree.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_read_support_format_tar.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_util.3#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_util.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write.3#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write_disk.3#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write_disk.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write_private.h#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write_set_compression_compress.c#1 branch
.. //depot/projects/dtrace7/src/lib/libarchive/archive_write_set_format_pax.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/config_freebsd.h#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/Makefile#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/main.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test.h#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_archive_api_feature.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_compat_gtar.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_compat_tar_hardlink.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_compat_zip.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_empty_write.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_entry.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_pax_filename_encoding.c#1 branch
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_pax_filename_encoding.tar.gz.uu#1 branch
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_read_format_ar.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_read_format_gtar_sparse.c#3 integrate
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_write_compress.c#1 branch
.. //depot/projects/dtrace7/src/lib/libarchive/test/test_write_format_ar.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/gen/readdir.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/gen/telldir.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/gen/telldir.h#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/posix1e/mac.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/posix1e/mac_exec.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/posix1e/mac_get.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libc/posix1e/mac_set.c#2 integrate
.. //depot/projects/dtrace7/src/lib/libutil/Makefile#2 integrate
.. //depot/projects/dtrace7/src/lib/libutil/gr_util.c#1 branch
.. //depot/projects/dtrace7/src/lib/libutil/libutil.h#2 integrate
.. //depot/projects/dtrace7/src/libexec/rtld-elf/rtld.c#2 integrate
.. //depot/projects/dtrace7/src/libexec/rtld-elf/rtld_lock.c#2 integrate
.. //depot/projects/dtrace7/src/libexec/rtld-elf/rtld_lock.h#2 integrate
.. //depot/projects/dtrace7/src/sbin/ddb/Makefile#2 integrate
.. //depot/projects/dtrace7/src/sbin/ddb/ddb.8#2 integrate
.. //depot/projects/dtrace7/src/sbin/ddb/ddb.c#2 integrate
.. //depot/projects/dtrace7/src/sbin/ddb/ddb.h#2 integrate
.. //depot/projects/dtrace7/src/sbin/ddb/ddb_capture.c#1 branch
.. //depot/projects/dtrace7/src/sbin/ipfw/ipfw.8#6 integrate
.. //depot/projects/dtrace7/src/sbin/ipfw/ipfw2.c#6 integrate
.. //depot/projects/dtrace7/src/share/man/man4/termios.4#2 integrate
.. //depot/projects/dtrace7/src/share/man/man9/bus_space.9#2 integrate
.. //depot/projects/dtrace7/src/sys/conf/NOTES#6 integrate
.. //depot/projects/dtrace7/src/sys/conf/files#11 integrate
.. //depot/projects/dtrace7/src/sys/dev/ata/ata-all.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/bge/if_bge.c#5 integrate
.. //depot/projects/dtrace7/src/sys/dev/bge/if_bgereg.h#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/ciss/ciss.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/coretemp/coretemp.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/em/if_em.c#4 integrate
.. //depot/projects/dtrace7/src/sys/dev/ieee488/ibfoo.c#2 integrate
.. //depot/projects/dtrace7/src/sys/dev/mfi/mfi.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/mpt/mpt_pci.c#2 integrate
.. //depot/projects/dtrace7/src/sys/dev/sound/midi/mpu401.c#2 integrate
.. //depot/projects/dtrace7/src/sys/dev/usb/if_aue.c#2 integrate
.. //depot/projects/dtrace7/src/sys/dev/usb/if_zyd.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/usb/uipaq.c#2 integrate
.. //depot/projects/dtrace7/src/sys/dev/usb/umass.c#3 integrate
.. //depot/projects/dtrace7/src/sys/dev/usb/usbdevs#7 integrate
.. //depot/projects/dtrace7/src/sys/fs/ntfs/ntfs_subr.c#4 integrate
.. //depot/projects/dtrace7/src/sys/fs/unionfs/union_subr.c#4 integrate
.. //depot/projects/dtrace7/src/sys/geom/vinum/geom_vinum_share.c#2 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_descrip.c#5 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_event.c#2 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_jail.c#3 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_lockf.c#3 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_priv.c#2 integrate
.. //depot/projects/dtrace7/src/sys/kern/kern_switch.c#2 integrate
.. //depot/projects/dtrace7/src/sys/kern/subr_bus.c#3 integrate
.. //depot/projects/dtrace7/src/sys/kern/uipc_sem.c#3 integrate
.. //depot/projects/dtrace7/src/sys/kern/vfs_subr.c#5 integrate
.. //depot/projects/dtrace7/src/sys/net/bpf.c#4 integrate
.. //depot/projects/dtrace7/src/sys/net/ethernet.h#2 integrate
.. //depot/projects/dtrace7/src/sys/netgraph/netflow/ng_netflow.c#3 integrate
.. //depot/projects/dtrace7/src/sys/netgraph/ng_base.c#6 integrate
.. //depot/projects/dtrace7/src/sys/netinet/ip_dummynet.c#3 integrate
.. //depot/projects/dtrace7/src/sys/netinet/ip_fw.h#4 integrate
.. //depot/projects/dtrace7/src/sys/netinet/ip_fw2.c#4 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_asconf.c#2 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_bsd_addr.c#4 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_bsd_addr.h#2 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_input.c#4 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_output.c#5 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_pcb.c#3 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_pcb.h#2 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_sysctl.c#2 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_usrreq.c#5 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctp_var.h#3 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctputil.c#5 integrate
.. //depot/projects/dtrace7/src/sys/netinet/sctputil.h#2 integrate
.. //depot/projects/dtrace7/src/sys/netinet/tcp_syncache.c#6 integrate
.. //depot/projects/dtrace7/src/sys/netipsec/xform_tcp.c#2 integrate
.. //depot/projects/dtrace7/src/sys/netncp/ncp_conn.c#2 integrate
.. //depot/projects/dtrace7/src/sys/netsmb/smb_conn.c#2 integrate
.. //depot/projects/dtrace7/src/sys/pci/intpm.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/include/bus.h#3 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/include/bus_common.h#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/include/intr_machdep.h#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/include/iommuvar.h#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/include/smp.h#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/apb.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pci_if.m#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pcib.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pcib_subr.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pcib_subr.h#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pcibus.c#4 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/psycho.c#4 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/pci/psychovar.h#3 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/sbus/sbus.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/sparc64/counter.c#2 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/sparc64/intr_machdep.c#3 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/sparc64/iommu.c#3 integrate
.. //depot/projects/dtrace7/src/sys/sparc64/sparc64/mp_machdep.c#3 integrate
.. //depot/projects/dtrace7/src/sys/sys/jail.h#2 integrate
.. //depot/projects/dtrace7/src/sys/vm/vm_pageout.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/bluetooth/rfcomm_sppd/rfcomm_sppd.1#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/bluetooth/rfcomm_sppd/rfcomm_sppd.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/env/env.1#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/env/env.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/fstat/fstat.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/getopt/README#2 delete
.. //depot/projects/dtrace7/src/usr.bin/getopt/getopt.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/tar/bsdtar.h#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/tar/read.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/tar/util.c#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/truss/Makefile#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/truss/amd64-fbsd32.c#1 branch
.. //depot/projects/dtrace7/src/usr.bin/truss/amd64-linux32.c#1 branch
.. //depot/projects/dtrace7/src/usr.bin/truss/amd64linux32.conf#1 branch
.. //depot/projects/dtrace7/src/usr.bin/truss/extern.h#2 integrate
.. //depot/projects/dtrace7/src/usr.bin/truss/fbsd32.conf#1 branch
.. //depot/projects/dtrace7/src/usr.bin/truss/main.c#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/moused/moused.8#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/moused/moused.c#3 integrate
.. //depot/projects/dtrace7/src/usr.sbin/sa/db.c#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/sade/disks.c#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/sade/label.c#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/traceroute6/traceroute6.8#2 integrate
.. //depot/projects/dtrace7/src/usr.sbin/traceroute6/traceroute6.c#2 integrate

Differences ...

==== //depot/projects/dtrace7/src/Makefile#4 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile,v 1.341.2.2 2008/02/12 20:17:53 jhb Exp $
+# $FreeBSD: src/Makefile,v 1.341.2.3 2008/05/10 18:43:57 rwatson Exp $
 #
 # The user-driven targets are:
 #
@@ -57,7 +57,7 @@
 #  6.  `mergemaster -p'
 #  7.  `make installworld'
 #  8.  `make delete-old'
-#  9.  `mergemaster'
+#  9.  `mergemaster'                         (you may wish to use -U or -ai).
 # 10.  `reboot'
 # 11.  `make delete-old-libs' (in case no 3rd party program uses them anymore)
 #

==== //depot/projects/dtrace7/src/etc/rc.d/dhclient#4 (text+ko) ====

@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $FreeBSD: src/etc/rc.d/dhclient,v 1.28.2.2 2008/03/12 17:35:38 brooks Exp $
+# $FreeBSD: src/etc/rc.d/dhclient,v 1.28.2.3 2008/05/15 01:53:09 brooks Exp $
 #
 
 # PROVIDE: dhclient
@@ -26,6 +26,10 @@
 			if [ -n "$pids" ]; then
 				exit 0
 			fi
+		elif [ -e /var/run/dhclient.pid ]; then
+			if [ -n "`pgrep -F /var/run/dhclient.pid`" ]; then
+				exit 0
+			fi
 		fi
 	fi
 

==== //depot/projects/dtrace7/src/etc/rc.d/hostid#2 (text+ko) ====

@@ -24,7 +24,7 @@
 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 # SUCH DAMAGE.
 #
-# $FreeBSD: src/etc/rc.d/hostid,v 1.7 2007/05/22 13:53:59 rse Exp $
+# $FreeBSD: src/etc/rc.d/hostid,v 1.7.2.1 2008/05/20 15:27:24 mtm Exp $
 #
 
 # PROVIDE: hostid
@@ -45,7 +45,7 @@
 {
 	uuid=$1
 	# Generate hostid based on hostuuid - take first four bytes from md5(uuid).
-	id=`echo -n $uuid | md5`
+	id=`echo -n $uuid | /sbin/md5`
 	id="0x${id%????????????????????????}"
 	# Set both kern.hostuuid and kern.hostid.
 	echo "Setting hostuuid: ${uuid}."

==== //depot/projects/dtrace7/src/etc/rc.d/ntpd#2 (text+ko) ====

@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $FreeBSD: src/etc/rc.d/ntpd,v 1.13 2006/04/18 15:02:24 flz Exp $
+# $FreeBSD: src/etc/rc.d/ntpd,v 1.13.2.1 2008/05/19 09:20:04 flz Exp $
 #
 
 # PROVIDE: ntpd
@@ -18,8 +18,6 @@
 
 load_rc_config $name
 
-required_files="${ntpd_config}"
-
 ntpd_precmd()
 {
 	rc_flags="-c ${ntpd_config} ${ntpd_flags}"

==== //depot/projects/dtrace7/src/etc/rc.subr#2 (text+ko) ====

@@ -1,5 +1,5 @@
 # $NetBSD: rc.subr,v 1.67 2006/10/07 11:25:15 elad Exp $
-# $FreeBSD: src/etc/rc.subr,v 1.77 2007/10/09 07:20:44 dougb Exp $
+# $FreeBSD: src/etc/rc.subr,v 1.77.2.1 2008/05/12 07:29:03 mtm Exp $
 #
 # Copyright (c) 1997-2004 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -171,11 +171,15 @@
 {
 	local always
 
-	if [ -n "$1" ] && checkyesno $1; then
+	case $1 in
+		#       "yes", "true", "on", or "1"
+	[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
 		always=true
-	else
+		;;
+	*)
 		always=false
-	fi
+		;;
+	esac
 	if [ "$autoboot" = yes -o "$always" = true ]; then
 		echo "ERROR: ABORTING BOOT (sending SIGTERM to parent)!"
 		kill -TERM ${RC_PID}

==== //depot/projects/dtrace7/src/gnu/usr.bin/man/TODO#2 (text+ko) ====

@@ -1,3 +1,5 @@
+$FreeBSD: src/gnu/usr.bin/man/TODO,v 1.1.1.1.58.1 2008/05/22 07:30:32 ru Exp $
+
 Things that would be nice but aren't really necessary:
 
 0.  Update the documentation.
@@ -105,7 +107,7 @@
     file names used by Motif.  Maybe there's a better way to handle
     this?
 
-15. Add ability to run man on a local file
+XX  Add ability to run man on a local file
 
 16. Handle per-tree tmac macros
     

==== //depot/projects/dtrace7/src/gnu/usr.bin/man/lib/util.c#2 (text+ko) ====

@@ -14,6 +14,8 @@
  * Austin, Texas  78712
  */
 
+/* $FreeBSD: src/gnu/usr.bin/man/lib/util.c,v 1.8.44.1 2008/05/22 07:30:32 ru Exp $ */
+
 #include <stdio.h>
 #include <string.h>
 #include <ctype.h>
@@ -120,6 +122,24 @@
 }
 
 /*
+ * Is path a regular file?
+ */
+int
+is_file (path)
+     char *path;
+{
+  struct stat sb;
+  register int status;
+
+  status = stat (path, &sb);
+
+  if (status != 0)
+    return -1;
+
+  return ((sb.st_mode & S_IFREG) == S_IFREG);
+}
+
+/*
  * Attempt a system () call.  Return 1 for success and 0 for failure
  * (handy for counting successes :-).
  */

==== //depot/projects/dtrace7/src/gnu/usr.bin/man/man/man.c#2 (text+ko) ====

@@ -16,7 +16,7 @@
 
 #ifndef lint
 static const char rcsid[] =
-  "$FreeBSD: src/gnu/usr.bin/man/man/man.c,v 1.65 2007/09/25 21:41:22 edwin Exp $";
+  "$FreeBSD: src/gnu/usr.bin/man/man/man.c,v 1.65.2.1 2008/05/22 07:30:32 ru Exp $";
 #endif /* not lint */
 
 #define MAN_MAIN
@@ -30,6 +30,7 @@
 #ifdef __FreeBSD__
 #include <locale.h>
 #include <langinfo.h>
+#include <libgen.h>
 #endif
 #include <stdio.h>
 #include <string.h>
@@ -70,6 +71,7 @@
 extern char **glob_filename ();
 extern int is_newer ();
 extern int is_directory ();
+extern int is_file ();
 extern int do_system_command ();
 
 char *prognam;
@@ -87,6 +89,7 @@
 static int whatis;
 static int findall;
 static int print_where;
+static char *ultimate_source ();
 
 #ifdef __FreeBSD__
 static char *locale, *locale_opts, *locale_nroff, *locale_codeset;
@@ -201,6 +204,11 @@
 	do_whatis (nextarg);
 	status = (status ? 0 : 1); /* reverts status, see below */
       }
+      else if (strchr (nextarg, '/') != NULL && is_file (nextarg) == 1)
+	{
+	  format_and_display (NULL, ultimate_source(nextarg, dirname(nextarg)),
+			      NULL);
+	}
       else
 	{
 	  status = man (nextarg);
@@ -825,7 +833,7 @@
     return YCAT;
 #endif	/* YCAT */
 #ifdef ZCAT
-  if (*end == 'Z' || !strcmp(end, "gz"))
+  if (*end == 'Z' || !strcmp(end, "gz") || !strcmp(end, "bz2"))
     return ZCAT;
 #endif	/* ZCAT */
   return NULL;
@@ -1409,13 +1417,15 @@
   if (access (man_file, R_OK) != 0)
     return 0;
 
-  if (troff)
+  if (troff || path == NULL)
     {
       roff_command = make_roff_command (man_file);
       if (roff_command == NULL)
 	return 0;
+      if (troff)
+	snprintf (command, sizeof(command), "(cd %s ; %s)", path, roff_command);
       else
-	snprintf (command, sizeof(command), "(cd %s ; %s)", path, roff_command);
+	snprintf (command, sizeof(command), "%s | %s", roff_command, pager);
 
       found = do_system_command (command);
     }

==== //depot/projects/dtrace7/src/include/readpassphrase.h#2 (text+ko) ====

@@ -1,5 +1,5 @@
 /*	$OpenBSD: /usr/local/www/cvsroot/OpenBSD/src/include/readpassphrase.h,v 1.2 2002/02/16 21:27:17 millert Exp $	*/
-/*	$FreeBSD: src/include/readpassphrase.h,v 1.2 2002/03/08 20:52:52 green Exp $	*/
+/*	$FreeBSD: src/include/readpassphrase.h,v 1.2.28.1 2008/05/16 01:06:01 scf Exp $	*/
 
 /*
  * Copyright (c) 2000 Todd C. Miller <Todd.Miller at courtesan.com>
@@ -39,6 +39,12 @@
 #define RPP_SEVENBIT    0x10		/* Strip the high bit from input. */
 
 #include <sys/cdefs.h>
+#include <sys/_types.h>
+
+#ifndef _SIZE_T_DECLARED
+typedef	__size_t	size_t;
+#define	_SIZE_T_DECLARED
+#endif
 
 __BEGIN_DECLS
 char * readpassphrase(const char *, char *, size_t, int);

==== //depot/projects/dtrace7/src/lib/libarchive/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/libarchive/Makefile,v 1.77.2.1 2008/02/11 00:31:06 kientzle Exp $
+# $FreeBSD: src/lib/libarchive/Makefile,v 1.77.2.2 2008/05/21 04:14:10 kientzle Exp $
 
 LIB=	archive
 DPADD=	${LIBBZ2} ${LIBZ}
@@ -81,6 +81,7 @@
 	archive_write_open_filename.c			\
 	archive_write_open_memory.c			\
 	archive_write_set_compression_bzip2.c		\
+	archive_write_set_compression_compress.c	\
 	archive_write_set_compression_gzip.c		\
 	archive_write_set_compression_none.c		\
 	archive_write_set_compression_program.c		\
@@ -120,6 +121,8 @@
 MLINKS+=	archive_entry.3 archive_entry_copy_gname.3
 MLINKS+=	archive_entry.3 archive_entry_copy_gname_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_hardlink_w.3
+MLINKS+=	archive_entry.3 archive_entry_copy_link.3
+MLINKS+=	archive_entry.3 archive_entry_copy_link_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_pathname_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_stat.3
 MLINKS+=	archive_entry.3 archive_entry_copy_symlink_w.3
@@ -211,6 +214,7 @@
 MLINKS+=	archive_util.3 archive_format.3
 MLINKS+=	archive_util.3 archive_format_name.3
 MLINKS+=	archive_util.3 archive_set_error.3
+MLINKS+=	archive_write.3 archive_write_close.3
 MLINKS+=	archive_write.3 archive_write_data.3
 MLINKS+=	archive_write.3 archive_write_finish.3
 MLINKS+=	archive_write.3 archive_write_finish_entry.3

==== //depot/projects/dtrace7/src/lib/libarchive/archive.h.in#3 (text+ko) ====

@@ -22,18 +22,12 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.46.2.1 2008/02/11 00:31:06 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.46.2.2 2008/05/21 04:13:43 kientzle Exp $
  */
 
 #ifndef ARCHIVE_H_INCLUDED
 #define	ARCHIVE_H_INCLUDED
 
-/*
- * This header file corresponds to:
- *   Library version @ARCHIVE_VERSION@
- *   Shared library version @SHLIB_MAJOR@
- */
-
 #include <sys/types.h>  /* Linux requires this for off_t */
 @ARCHIVE_H_INCLUDE_INTTYPES_H@
 #include <stdio.h> /* For FILE * */
@@ -51,58 +45,59 @@
 #endif
 
 /*
- * Each of the version identifiers comes as a macro and a function.
+ * The version number is provided as both a macro and a function.
  * The macro identifies the installed header; the function identifies
  * the library version (which may not be the same if you're using a
  * dynamically-linked version of the library).
  */
 
 /*
- * Textual name/version of the library, useful for version displays.
- */
-#define	ARCHIVE_LIBRARY_VERSION	"libarchive @LIBARCHIVE_VERSION_STRING@"
-const char *	archive_version(void);
-
-/*
- * The "version stamp" is a single integer that makes it easy to check
- * the exact version: for version a.b.c, the version stamp is
- * printf("%d%03d%03d",a,b,c).  For example, version 2.12.108 has
- * version stamp 2012108.
+ * The version number is expressed as a single integer that makes it
+ * easy to compare versions at build time: for version a.b.c, the
+ * version number is printf("%d%03d%03d",a,b,c).  For example, if you
+ * know your application requires version 2.12.108 or later, you can
+ * assert that ARCHIVE_VERSION >= 2012108.
  *
- * This was introduced with libarchive 1.9.0 in the libarchive 1.x family
- * and libarchive 2.2.4 in the libarchive 2.x family.  The following
- * may be useful if you really want to do feature detection for earlier
- * libarchive versions (which defined API_VERSION and API_FEATURE):
+ * This single-number format was introduced with libarchive 1.9.0 in
+ * the libarchive 1.x family and libarchive 2.2.4 in the libarchive
+ * 2.x family.  The following may be useful if you really want to do
+ * feature detection for earlier libarchive versions (which defined
+ * ARCHIVE_API_VERSION and ARCHIVE_API_FEATURE instead):
  *
- * #ifndef ARCHIVE_VERSION_STAMP
- * #define ARCHIVE_VERSION_STAMP 	\
+ * #ifndef ARCHIVE_VERSION_NUMBER
+ * #define ARCHIVE_VERSION_NUMBER	\
  *             (ARCHIVE_API_VERSION * 1000000 + ARCHIVE_API_FEATURE * 1000)
  * #endif
  */
-#define ARCHIVE_VERSION_STAMP	@LIBARCHIVE_VERSION@
-int		archive_version_stamp(void);
+#define ARCHIVE_VERSION_NUMBER		@LIBARCHIVE_VERSION@
+int		archive_version_number(void);
 
 /*
- * Major version number: If ARCHIVE_API_VERSION !=
- * archive_api_version(), then the library you were linked with is
- * using an incompatible API to the one you were compiled with.  This
- * is almost certainly a fatal problem.
- * This is deprecated and will be removed; use ARCHIVE_VERSION_STAMP
- * instead.
+ * Textual name/version of the library, useful for version displays.
  */
-#define	ARCHIVE_API_VERSION	(ARCHIVE_VERSION_STAMP / 1000000)
-int		archive_api_version(void);
+const char *	archive_version_string(void);
 
+#if ARCHIVE_VERSION_NUMBER < 3000000
 /*
- * Minor version number.  This is deprecated and will be removed.
- * Use ARCHIVE_VERSION_STAMP to adapt to libarchive API variations.
+ * Deprecated; these are older names that will be removed in favor of
+ * the simpler definitions above.
  */
-#define	ARCHIVE_API_FEATURE	((ARCHIVE_VERSION_STAMP / 1000) % 1000)
+#define	ARCHIVE_VERSION_STAMP	ARCHIVE_VERSION_NUMBER
+int		archive_version_stamp(void);
+#define	ARCHIVE_LIBRARY_VERSION	"libarchive @LIBARCHIVE_VERSION_STRING@"
+const char *	archive_version(void);
+#define	ARCHIVE_API_VERSION	(ARCHIVE_VERSION_NUMBER / 1000000)
+int		archive_api_version(void);
+#define	ARCHIVE_API_FEATURE	((ARCHIVE_VERSION_NUMBER / 1000) % 1000)
 int		archive_api_feature(void);
+#endif
 
-
+#if ARCHIVE_VERSION_NUMBER < 3000000
+/* This should never have been here in the first place. */
+/* Legacy of old tar assumptions, will be removed in libarchive 3.0. */
 #define	ARCHIVE_BYTES_PER_RECORD	  512
 #define	ARCHIVE_DEFAULT_BYTES_PER_BLOCK	10240
+#endif
 
 /* Declare our basic types. */
 struct archive;
@@ -119,6 +114,7 @@
 #define	ARCHIVE_WARN	(-20)	/* Partial success. */
 /* For example, if write_header "fails", then you can't push data. */
 #define	ARCHIVE_FAILED	(-25)	/* Current operation cannot complete. */
+/* But if write_header is "fatal," then this archive is dead and useless. */
 #define	ARCHIVE_FATAL	(-30)	/* No more operations are possible. */
 
 /*
@@ -146,7 +142,7 @@
 typedef ssize_t	archive_read_callback(struct archive *, void *_client_data,
 		    const void **_buffer);
 /* Skips at most request bytes from archive and returns the skipped amount */
-#if ARCHIVE_API_VERSION < 2
+#if ARCHIVE_VERSION_NUMBER < 2000000
 typedef ssize_t	archive_skip_callback(struct archive *, void *_client_data,
 		    size_t request);
 #else
@@ -370,7 +366,7 @@
 int		 archive_read_close(struct archive *);
 /* Release all resources and destroy the object. */
 /* Note that archive_read_finish will call archive_read_close for you. */
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 int		 archive_read_finish(struct archive *);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */
@@ -407,6 +403,7 @@
 int		 archive_write_set_skip_file(struct archive *, dev_t, ino_t);
 
 int		 archive_write_set_compression_bzip2(struct archive *);
+int		 archive_write_set_compression_compress(struct archive *);
 int		 archive_write_set_compression_gzip(struct archive *);
 int		 archive_write_set_compression_none(struct archive *);
 int		 archive_write_set_compression_program(struct archive *,
@@ -445,7 +442,7 @@
  */
 int		 archive_write_header(struct archive *,
 		     struct archive_entry *);
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 ssize_t		 archive_write_data(struct archive *, const void *, size_t);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */
@@ -455,7 +452,7 @@
 ssize_t		 archive_write_data_block(struct archive *, const void *, size_t, off_t);
 int		 archive_write_finish_entry(struct archive *);
 int		 archive_write_close(struct archive *);
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 int		 archive_write_finish(struct archive *);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */

==== //depot/projects/dtrace7/src/lib/libarchive/archive_entry.3#2 (text+ko) ====

@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.15 2007/07/15 19:10:34 kientzle Exp $
+.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.15.2.1 2008/05/21 04:12:57 kientzle Exp $
 .\"
 .Dd December 15, 2003
 .Dt archive_entry 3
@@ -45,6 +45,8 @@
 .Nm archive_entry_copy_gname_w ,
 .Nm archive_entry_copy_hardlink ,
 .Nm archive_entry_copy_hardlink_w ,
+.Nm archive_entry_copy_link ,
+.Nm archive_entry_copy_link_w ,
 .Nm archive_entry_copy_pathname_w ,
 .Nm archive_entry_copy_stat ,
 .Nm archive_entry_copy_symlink ,
@@ -101,17 +103,47 @@
 .Sh SYNOPSIS
 .In archive_entry.h
 .Ft void
-.Fn archive_entry_acl_add_entry "struct archive_entry *" "int type" "int permset" "int tag" "int qual" "const char *name"
+.Fo archive_entry_acl_add_entry
+.Fa "struct archive_entry *"
+.Fa "int type"
+.Fa "int permset"
+.Fa "int tag"
+.Fa "int qual"
+.Fa "const char *name"
+.Fc
 .Ft void
-.Fn archive_entry_acl_add_entry_w "struct archive_entry *" "int type" "int permset" "int tag" "int qual" "const wchar_t *name"
+.Fo archive_entry_acl_add_entry_w
+.Fa "struct archive_entry *"
+.Fa "int type"
+.Fa "int permset"
+.Fa "int tag"
+.Fa "int qual"
+.Fa "const wchar_t *name"
+.Fc
 .Ft void
 .Fn archive_entry_acl_clear "struct archive_entry *"
 .Ft int
 .Fn archive_entry_acl_count "struct archive_entry *" "int type"
 .Ft int
-.Fn archive_entry_acl_next "struct archive_entry *" "int want_type" "int *type" "int *permset" "int *tag" "int *qual" "const char **name"
+.Fo archive_entry_acl_next
+.Fa "struct archive_entry *"
+.Fa "int want_type"
+.Fa "int *type"
+.Fa "int *permset"
+.Fa "int *tag"
+.Fa "int *qual"
+.Fa "const char **name"
+.Fc
 .Ft int
-.Fn archive_entry_acl_next_w "struct archive_entry *" "int want_type" "int *type" "int *permset" "int *tag" "int *qual" "const wchar_t **name"
+.Fo archive_entry_acl_next_w
+.Fa "struct archive_entry *"
+.Fa "int want_type"
+.Fa "int *type"
+.Fa "int *permset"
+.Fa "int *tag"
+.Fa "int *qual"
+.Fa "const wchar_t **name"
+.Fc
 .Ft int
 .Fn archive_entry_acl_reset "struct archive_entry *" "int want_type"
 .Ft const wchar_t *
@@ -155,7 +187,11 @@
 .Ft mode_t
 .Fn archive_entry_filetype "struct archive_entry *"
 .Ft void
-.Fn archive_entry_fflags "struct archive_entry *" "unsigned long *set" "unsigned long *clear"
+.Fo archive_entry_fflags
+.Fa "struct archive_entry *"
+.Fa "unsigned long *set"
+.Fa "unsigned long *clear"
+.Fc
 .Ft const char *
 .Fn archive_entry_fflags_text "struct archive_entry *"
 .Ft void
@@ -195,7 +231,11 @@
 .Ft void
 .Fn archive_entry_set_filetype "struct archive_entry *" "unsigned int"
 .Ft void
-.Fn archive_entry_set_fflags "struct archive_entry *" "unsigned long set" "unsigned long clear"
+.Fo archive_entry_set_fflags
+.Fa "struct archive_entry *"
+.Fa "unsigned long set"
+.Fa "unsigned long clear"
+.Fc
 .Ft void
 .Fn archive_entry_set_gid "struct archive_entry *" "gid_t"
 .Ft void

==== //depot/projects/dtrace7/src/lib/libarchive/archive_entry.c#3 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.44.2.1 2008/02/11 00:31:06 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.44.2.2 2008/05/21 04:12:29 kientzle Exp $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -207,6 +207,8 @@
 static const wchar_t *
 aes_get_wcs(struct aes *aes)
 {
+	int r;
+
 	if (aes->aes_wcs == NULL && aes->aes_mbs == NULL)
 		return NULL;
 	if (aes->aes_wcs == NULL && aes->aes_mbs != NULL) {
@@ -221,8 +223,13 @@
 		aes->aes_wcs = aes->aes_wcs_alloc;
 		if (aes->aes_wcs == NULL)
 			__archive_errx(1, "No memory for aes_get_wcs()");
-		mbstowcs(aes->aes_wcs_alloc, aes->aes_mbs, wcs_length);
+		r = mbstowcs(aes->aes_wcs_alloc, aes->aes_mbs, wcs_length);
 		aes->aes_wcs_alloc[wcs_length] = 0;
+		if (r == -1) {
+			/* Conversion failed, don't lie to our clients. */
+			free(aes->aes_wcs_alloc);
+			aes->aes_wcs = aes->aes_wcs_alloc = NULL;
+		}
 	}
 	return (aes->aes_wcs);
 }
@@ -307,6 +314,8 @@
 struct archive_entry *
 archive_entry_clear(struct archive_entry *entry)
 {
+	if (entry == NULL)
+		return (NULL);
 	aes_clean(&entry->ae_fflags_text);
 	aes_clean(&entry->ae_gname);
 	aes_clean(&entry->ae_hardlink);
@@ -752,6 +761,28 @@
 		aes_set_mbs(&entry->ae_hardlink, target);
 }
 
+/* Set symlink if symlink is already set, else set hardlink. */
+void
+archive_entry_copy_link(struct archive_entry *entry, const char *target)
+{
+	if (entry->ae_symlink.aes_mbs != NULL ||
+	    entry->ae_symlink.aes_wcs != NULL)
+		aes_copy_mbs(&entry->ae_symlink, target);
+	else
+		aes_copy_mbs(&entry->ae_hardlink, target);
+}
+
+/* Set symlink if symlink is already set, else set hardlink. */
+void
+archive_entry_copy_link_w(struct archive_entry *entry, const wchar_t *target)
+{
+	if (entry->ae_symlink.aes_mbs != NULL ||
+	    entry->ae_symlink.aes_wcs != NULL)
+		aes_copy_wcs(&entry->ae_symlink, target);
+	else
+		aes_copy_wcs(&entry->ae_hardlink, target);
+}
+
 void
 archive_entry_set_mode(struct archive_entry *entry, mode_t m)
 {
@@ -1124,6 +1155,11 @@
 		entry->acl_p = entry->acl_p->next;
 	if (entry->acl_p == NULL) {
 		entry->acl_state = 0;
+		*type = 0;
+		*permset = 0;
+		*tag = 0;
+		*id = -1;
+		*name = NULL;
 		return (ARCHIVE_EOF); /* End of ACL entries. */
 	}
 	*type = entry->acl_p->type;
@@ -1143,7 +1179,7 @@
 archive_entry_acl_text_w(struct archive_entry *entry, int flags)
 {
 	int count;
-	int length;
+	size_t length;
 	const wchar_t *wname;
 	const wchar_t *prefix;
 	wchar_t separator;
@@ -1505,7 +1541,7 @@
 		return (ARCHIVE_OK);
 	} else {
 		*name = NULL;
-		*name = NULL;
+		*value = NULL;
 		*size = (size_t)0;
 		return (ARCHIVE_WARN);
 	}

==== //depot/projects/dtrace7/src/lib/libarchive/archive_entry.h#3 (text+ko) ====

@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libarchive/archive_entry.h,v 1.23.2.1 2008/02/11 00:31:06 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive_entry.h,v 1.23.2.2 2008/05/21 04:12:29 kientzle Exp $
  */
 
 #ifndef ARCHIVE_ENTRY_H_INCLUDED
@@ -57,7 +57,25 @@
 struct archive_entry;
 
 /*
- * File-type constants.  These are returned from archive_entry_filetype().
+ * File-type constants.  These are returned from archive_entry_filetype()
+ * and passed to archive_entry_set_filetype().
+ *
+ * These values match S_XXX defines on every platform I've checked,
+ * including Windows, AIX, Linux, Solaris, and BSD.  They're
+ * (re)defined here because platforms generally don't define the ones
+ * they don't support.  For example, Windows doesn't define S_IFLNK or
+ * S_IFBLK.  Instead of having a mass of conditional logic and system
+ * checks to define any S_XXX values that aren't supported locally,
+ * I've just defined a new set of such constants so that
+ * libarchive-based applications can manipulate and identify archive
+ * entries properly even if the hosting platform can't store them on
+ * disk.
+ *
+ * These values are also used directly within some portable formats,
+ * such as cpio.  If you find a platform that varies from these, the
+ * correct solution is to leave these alone and translate from these
+ * portable values to platform-native values when entries are read from
+ * or written to disk.
  */
 #define	AE_IFMT		0170000
 #define	AE_IFREG	0100000
@@ -91,7 +109,8 @@
 dev_t			 archive_entry_devminor(struct archive_entry *);
 mode_t			 archive_entry_filetype(struct archive_entry *);
 void			 archive_entry_fflags(struct archive_entry *,
-			     unsigned long *set, unsigned long *clear);
+			    unsigned long * /* set */,
+			    unsigned long * /* clear */);
 const char		*archive_entry_fflags_text(struct archive_entry *);
 gid_t			 archive_entry_gid(struct archive_entry *);
 const char		*archive_entry_gname(struct archive_entry *);
@@ -130,7 +149,7 @@
 void	archive_entry_set_devminor(struct archive_entry *, dev_t);
 void	archive_entry_set_filetype(struct archive_entry *, unsigned int);
 void	archive_entry_set_fflags(struct archive_entry *,
-	    unsigned long set, unsigned long clear);
+	    unsigned long /* set */, unsigned long /* clear */);
 /* Returns pointer to start of first invalid token, or NULL if none. */
 /* Note that all recognized tokens are processed, regardless. */
 const wchar_t *archive_entry_copy_fflags_text_w(struct archive_entry *,
@@ -144,6 +163,8 @@
 void	archive_entry_copy_hardlink_w(struct archive_entry *, const wchar_t *);
 void	archive_entry_set_ino(struct archive_entry *, unsigned long);
 void	archive_entry_set_link(struct archive_entry *, const char *);
+void	archive_entry_copy_link(struct archive_entry *, const char *);
+void	archive_entry_copy_link_w(struct archive_entry *, const wchar_t *);
 void	archive_entry_set_mode(struct archive_entry *, mode_t);
 void	archive_entry_set_mtime(struct archive_entry *, time_t, long);
 void	archive_entry_set_nlink(struct archive_entry *, unsigned int);
@@ -182,6 +203,13 @@
  *   = there are many different ACL text formats
  *   = would like to be able to read/convert archives containing ACLs
  *     on platforms that lack ACL libraries
+ *
+ *  This last point, in particular, forces me to implement a reasonably
+ *  complete set of ACL support routines.
+ *
+ *  TODO: Extend this to support NFSv4/NTFS permissions.  That should
+ *  allow full ACL support on Mac OS, in particular, which uses
+ *  POSIX.1e-style interfaces to manipulate NFSv4/NTFS permissions.
  */
 
 /*
@@ -216,21 +244,24 @@
  */
 void	 archive_entry_acl_clear(struct archive_entry *);
 void	 archive_entry_acl_add_entry(struct archive_entry *,
-	     int type, int permset, int tag, int qual, const char *name);
+	    int /* type */, int /* permset */, int /* tag */,
+	    int /* qual */, const char * /* name */);
 void	 archive_entry_acl_add_entry_w(struct archive_entry *,
-	     int type, int permset, int tag, int qual, const wchar_t *name);
+	    int /* type */, int /* permset */, int /* tag */,
+	    int /* qual */, const wchar_t * /* name */);
 
 /*
  * To retrieve the ACL, first "reset", then repeatedly ask for the
  * "next" entry.  The want_type parameter allows you to request only
  * access entries or only default entries.
  */
-int	 archive_entry_acl_reset(struct archive_entry *, int want_type);
-int	 archive_entry_acl_next(struct archive_entry *, int want_type,
-	     int *type, int *permset, int *tag, int *qual, const char **name);
-int	 archive_entry_acl_next_w(struct archive_entry *, int want_type,
-	     int *type, int *permset, int *tag, int *qual,
-	     const wchar_t **name);
+int	 archive_entry_acl_reset(struct archive_entry *, int /* want_type */);
+int	 archive_entry_acl_next(struct archive_entry *, int /* want_type */,
+	    int * /* type */, int * /* permset */, int * /* tag */,
+	    int * /* qual */, const char ** /* name */);
+int	 archive_entry_acl_next_w(struct archive_entry *, int /* want_type */,
+	    int * /* type */, int * /* permset */, int * /* tag */,
+	    int * /* qual */, const wchar_t ** /* name */);
 
 /*
  * Construct a text-format ACL.  The flags argument is a bitmask that
@@ -245,10 +276,11 @@
  */
 #define	ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID	1024
 #define	ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT	2048
-const wchar_t	*archive_entry_acl_text_w(struct archive_entry *, int flags);
+const wchar_t	*archive_entry_acl_text_w(struct archive_entry *,
+		    int /* flags */);
 
 /* Return a count of entries matching 'want_type' */
-int	 archive_entry_acl_count(struct archive_entry *, int want_type);
+int	 archive_entry_acl_count(struct archive_entry *, int /* want_type */);
 
 /*
  * Private ACL parser.  This is private because it handles some
@@ -259,9 +291,12 @@
  * this interface are likely to be surprised when it changes.
  *
  * You were warned!
+ *
+ * TODO: Move this declaration out of the public header and into
+ * a private header.  Warnings above are silly.
  */
 int		 __archive_entry_acl_parse_w(struct archive_entry *,
-		     const wchar_t *, int type);
+		    const wchar_t *, int /* type */);
 
 /*
  * extended attributes
@@ -269,7 +304,8 @@
 
 void	 archive_entry_xattr_clear(struct archive_entry *);
 void	 archive_entry_xattr_add_entry(struct archive_entry *,
-	     const char *name, const void *value, size_t size);
+	    const char * /* name */, const void * /* value */,
+	    size_t /* size */);
 
 /*
  * To retrieve the xattr list, first "reset", then repeatedly ask for the
@@ -279,7 +315,7 @@
 int	archive_entry_xattr_count(struct archive_entry *);
 int	archive_entry_xattr_reset(struct archive_entry *);
 int	archive_entry_xattr_next(struct archive_entry *,
-	     const char **name, const void **value, size_t *);
+	    const char ** /* name */, const void ** /* value */, size_t *);
 
 /*
  * Utility to detect hardlinks.

==== //depot/projects/dtrace7/src/lib/libarchive/archive_platform.h#3 (text+ko) ====

>>> TRUNCATED FOR MAIL (1000 lines) <<<


More information about the p4-projects mailing list