PERFORCE change 107269 for review
John Birrell
jb at FreeBSD.org
Wed Oct 4 14:31:53 PDT 2006
http://perforce.freebsd.org/chv.cgi?CH=107269
Change 107269 by jb at jb_freebsd7 on 2006/10/04 21:31:14
IFC
Affected files ...
.. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#25 integrate
.. //depot/projects/dtrace/doc/share/pgpkeys/chinsan.key#1 branch
.. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#14 integrate
.. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#13 integrate
.. //depot/projects/dtrace/ports/KNOBS#5 integrate
.. //depot/projects/dtrace/ports/LEGAL#7 integrate
.. //depot/projects/dtrace/ports/MOVED#17 integrate
.. //depot/projects/dtrace/src/crypto/openssh/sshd.c#4 integrate
.. //depot/projects/dtrace/src/gnu/usr.bin/Makefile#4 integrate
.. //depot/projects/dtrace/src/lib/libarchive/archive_read_extract.c#5 integrate
.. //depot/projects/dtrace/src/lib/libc/gen/arc4random.c#3 integrate
.. //depot/projects/dtrace/src/share/man/man4/ddb.4#5 integrate
.. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_proto.h#6 integrate
.. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscall.h#6 integrate
.. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscalls.c#6 integrate
.. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_sysent.c#6 integrate
.. //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.master#7 integrate
.. //depot/projects/dtrace/src/sys/dev/aic/aic_pccard.c#3 integrate
.. //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#12 integrate
.. //depot/projects/dtrace/src/sys/dev/bge/if_bgereg.h#8 integrate
.. //depot/projects/dtrace/src/sys/dev/usb/ehci.c#6 integrate
.. //depot/projects/dtrace/src/sys/dev/usb/ohci.c#5 integrate
.. //depot/projects/dtrace/src/sys/dev/usb/usb_subr.c#5 integrate
.. //depot/projects/dtrace/src/sys/dev/usb/usbdi.c#5 integrate
.. //depot/projects/dtrace/src/sys/kern/init_sysent.c#12 integrate
.. //depot/projects/dtrace/src/sys/kern/syscalls.c#11 integrate
.. //depot/projects/dtrace/src/sys/kern/syscalls.master#10 integrate
.. //depot/projects/dtrace/src/sys/kern/systrace_args.c#7 integrate
.. //depot/projects/dtrace/src/sys/kern/tty_pty.c#4 integrate
.. //depot/projects/dtrace/src/sys/kern/vfs_mount.c#12 integrate
.. //depot/projects/dtrace/src/sys/netinet/if_ether.c#4 integrate
.. //depot/projects/dtrace/src/sys/security/audit/audit_bsm.c#6 integrate
.. //depot/projects/dtrace/src/sys/sys/_elf_solaris.h#2 integrate
.. //depot/projects/dtrace/src/sys/sys/elf.h#2 integrate
.. //depot/projects/dtrace/src/sys/sys/mount.h#5 integrate
.. //depot/projects/dtrace/src/sys/sys/syscall.h#11 integrate
.. //depot/projects/dtrace/src/sys/sys/syscall.mk#11 integrate
.. //depot/projects/dtrace/src/sys/sys/sysproto.h#11 integrate
.. //depot/projects/dtrace/src/sys/sys/time.h#9 integrate
.. //depot/projects/dtrace/www/en/donations/donors.sgml#12 integrate
.. //depot/projects/dtrace/www/en/platforms/ia64/index.xsl#4 integrate
Differences ...
==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#25 (text+ko) ====
@@ -1,4 +1,4 @@
-<!-- $FreeBSD: doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml,v 1.612 2006/10/02 00:00:06 bsam Exp $ -->
+<!-- $FreeBSD: doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml,v 1.618 2006/10/04 20:03:37 alepulver Exp $ -->
<!--
NOTE TO COMMITTERS: Contributors lists are sorted in alphabetical
order by first name.
@@ -3158,6 +3158,11 @@
</listitem>
<listitem>
+ <para>Greg Albrecht
+ <email>gregoryba at gmail.com</email></para>
+ </listitem>
+
+ <listitem>
<para>Greg Ansley
<email>gja at ansley.com</email></para>
</listitem>
@@ -3838,6 +3843,11 @@
</listitem>
<listitem>
+ <para>Janaka Wickramasinghe
+ <email>janaka at opensource.lk</email></para>
+ </listitem>
+
+ <listitem>
<para>Janick Taillandier
<email>Janick.Taillandier at ratp.fr</email></para>
</listitem>
@@ -5682,6 +5692,11 @@
</listitem>
<listitem>
+ <para>Masashi CHIBA
+ <email>chiba.masashi at gmail.com</email></para>
+ </listitem>
+
+ <listitem>
<para>Masatoshi TAMURA
<email>tamrin at shinzan.kuee.kyoto-u.ac.jp</email></para>
</listitem>
@@ -7461,6 +7476,11 @@
</listitem>
<listitem>
+ <para>Raul Pollicino
+ <email>email-ports at def-defying.com</email></para>
+ </listitem>
+
+ <listitem>
<para>Razi Khaja
<email>razi at genet.sickkids.on.ca</email></para>
</listitem>
@@ -8781,6 +8801,11 @@
</listitem>
<listitem>
+ <para>Thomas BRETON
+ <email>tom at h-inventory.com</email></para>
+ </listitem>
+
+ <listitem>
<para>Thomas D. Dean
<email>tomdean at ix.netcom.com</email></para>
</listitem>
@@ -9725,6 +9750,11 @@
</listitem>
<listitem>
+ <para>rossiya
+ <email>rossiya at gmail.com</email></para>
+ </listitem>
+
+ <listitem>
<para>trasz
<email>trasz at pin.if.uz.zgora.pl</email></para>
</listitem>
==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#14 (text+ko) ====
@@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
- $FreeBSD: doc/share/pgpkeys/pgpkeys-developers.sgml,v 1.31 2006/09/29 20:58:53 xride Exp $
+ $FreeBSD: doc/share/pgpkeys/pgpkeys-developers.sgml,v 1.32 2006/10/04 10:55:43 chinsan Exp $
-->
<sect2 id="pgpkey-ariff">
@@ -374,6 +374,11 @@
&pgpkey.foxfair;
</sect2>
+ <sect2 id="pgpkey-chinsan">
+ <title>&a.chinsan;</title>
+ &pgpkey.chinsan;
+ </sect2>
+
<sect2 id="pgpkey-jkh">
<title>&a.jkh;</title>
&pgpkey.jkh;
==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#13 (text+ko) ====
@@ -1,5 +1,5 @@
-<!-- $FreeBSD: doc/share/pgpkeys/pgpkeys.ent,v 1.121 2006/09/29 20:58:53 xride Exp $ -->
+<!-- $FreeBSD: doc/share/pgpkeys/pgpkeys.ent,v 1.122 2006/10/04 10:55:43 chinsan Exp $ -->
<!-- PGP keyblocks -->
<!ENTITY pgpkey.aaron SYSTEM "aaron.key">
<!ENTITY pgpkey.ache SYSTEM "ache.key">
@@ -39,6 +39,7 @@
<!ENTITY pgpkey.bz SYSTEM "bz.key">
<!ENTITY pgpkey.cel SYSTEM "cel.key">
<!ENTITY pgpkey.ceri SYSTEM "ceri.key">
+<!ENTITY pgpkey.chinsan SYSTEM "chinsan.key">
<!ENTITY pgpkey.cjc SYSTEM "cjc.key">
<!ENTITY pgpkey.cjh SYSTEM "cjh.key">
<!ENTITY pgpkey.clement SYSTEM "clement.key">
==== //depot/projects/dtrace/ports/KNOBS#5 (text+ko) ====
@@ -1,7 +1,7 @@
#
# KNOBS - A list of popular knobs and descriptions
#
-# $FreeBSD: ports/KNOBS,v 1.16 2006/09/18 15:53:50 skv Exp $
+# $FreeBSD: ports/KNOBS,v 1.17 2006/10/04 20:20:38 shaun Exp $
#
# Rules to adding knobs:
#
@@ -50,6 +50,7 @@
GNUTLS Adds GnuTLS support
GSASL Adds GSASL support
GSM GSM audio codec support
+GSSAPI GSSAPI (Kerberos) support
GSTREAMER Gstreamer multimedia support
GTK1 Adds Gtk+1 support
GTK2 Adds Gtk+2 support
==== //depot/projects/dtrace/ports/LEGAL#7 (text+ko) ====
@@ -1,5 +1,5 @@
# Creator: Jordan Hubbard
-# $FreeBSD: ports/LEGAL,v 1.499 2006/10/02 12:38:31 vd Exp $
+# $FreeBSD: ports/LEGAL,v 1.502 2006/10/03 18:53:18 alepulver Exp $
**********************************************************************
*** NOTE TO COMMITTERS ***
@@ -76,14 +76,11 @@
redistribution
bicom* archivers/bicom Contact author personally
regarding commercial use
-bk-*-x86-freebsd* devel/bitkeeper Redistribution is not permitted
blast-freebsd* biology/blast Must be downloaded from vendor site
boodler-* audio/boodler Not for commercial use
Browser*.tar.gz net/ldapbrowser No reply from author regarding
redistribution licensing
bsp_upektfmess-* security/bsp_upektfmess License prohibits redistribution
-bugseeker2ee* java/bugseeker License does not allow
- redistribution
bzip-* archivers/bzip Some algorithms used may
infringe certain US patents.
Opinions differ. Commercial
@@ -93,6 +90,7 @@
ccc-*.alpha.rpm lang/compaq-cc Distribution not allowed
checkpassword-*.tar.gz security/checkpassword Unsure of djb's license
citrix_ica-*-de.tar.gz german/citrix_ica License prohibits redistribution
+citrix_ica-*-ja.tar.gz japanese/citrix_ica License prohibits redistribution
citrix_ica-*.tar.gz net/citrix_ica License prohibits redistribution
cfs-* security/cfs Crypto; export-controlled
clibpdf*.tar.gz print/clibpdf Needs a license to bundle with
@@ -212,7 +210,6 @@
festival/voice_mwm_di-* audio/festvox-mwm No commercial use
festival/voice_ogirab_di-* audio/festvox-ogirab No commercial use
festival/voice_tll_di-* audio/festvox-tll No commercial use
-ffj30_ce_ml.class java/forte Restrictive license
fMSX* emulators/fmsx Unclear legal status of
distributed ROMs
foiltex* textproc/foiltex Redistribution on a not-for-profit
@@ -238,6 +235,9 @@
before downloading
freqship/* sysutils/freqsdwn License agreement is required
to download
+fretsonfire/FretsOnFire-*-linux* games/fretsonfire-data Only Unreal Voodoo
+ site is allowed to
+ distribute the music
ftree-* misc/ftree Cannot distribute commercially
fwtk/* security/fwtk No redistribution allowed
Frisk-* games/xfrisk Copyright/trademark violation?
@@ -252,12 +252,9 @@
you have to acquire a license
giftool-* graphics/giftool Do not redistribute for profit
glimpse-* textproc/glimpse Do not sell for profit
-gnome2/MCity-Alloy-* x11-themes/metacity-theme-alloy-c Themes may contain artwork not
+gnome2/MCity-microGUI* x11-themes/metacity-theme-microgui Themes may contain artwork not
done by the author. Keep FreeBSD safe
if the theme author violated copyrights
-gnome2/MCity-Hacked-2* x11-themes/metacity-theme-hacked-2 See x11-themes/metacity-theme-alloy-c
-gnome2/MCity-Iridium-rounded* x11-themes/metacity-theme-iridium-rounded See x11-themes/metacity-theme-alloy-c
-gnome2/MCity-microGUI* x11-themes/metacity-theme-microgui See x11-themes/metacity-theme-alloy-c
gnupg-* security/gnupg Crypto; export-controlled
goemon.tgz audio/timidity Uses copyrighted patches
gogo239b.tgz audio/gogo Condition is not clear
@@ -384,7 +381,7 @@
original package only
Linux-ACU-Driver-v* sysutils/linux-acu Redistribution not allowed
linux-gtk2 x11-toolkits/linux-gtk2 LGPL binary, no source
-linuxq3ademo-* games/linux-q3ademo Restrictive license by Loki Software
+linuxq3ademo-* games/linux-quake3-demo Restrictive license by Loki Software
l0phtcrack/* security/l0phtcrack Parts are under GPL, so
binaries should not be
distributed. Contains crypto
@@ -438,7 +435,6 @@
netbeans-* java/netbeans Restrictive copyright
netcomponents-* java/netcomponents No redistribution except as part
of a substantially different product
-netscape-*-us-* www/netscape* Crypto; export-controlled
netshow_linux.gz multimedia/netshow Commercial software
nfbtr758.zip textproc/nfbtrans Unclear copyright status
nntpcache-* news/nntpcache Commercial or government use
@@ -446,7 +442,6 @@
nsc2ke.* math/nsc2ke No resale, contact author for
commercial usage
nte-1.* mbone/nte Crypto; export-controlled
-nwrite-* misc/nwrite Ownership in dispute
MRONWnn6.tgz japanese/Wnn6 You should buy from Omron
Software Co., Ltd.
oneko-*.tar.gz games/oneko-sakura Including derivatives from
@@ -474,7 +469,6 @@
usage and distribution
perforce/* devel/perforce Restricted distribution
pgp* security/pgp* Various locality restrictions
-pim6dd-*.tar.gz net/pim6dd Cannot be sold for profit
platon* biology/platon US$ 5000 for commercial users,
(free for academic)
pmake-*.tar.Z devel/pmake Non-commercial use only
@@ -562,7 +556,6 @@
swing1_1_1* java/jfc Do not distribute without
value-added application
systemc-2*.tgz cad/systemc License agreement required.
-tasks.zip www/tasks License prohibits redistribution
tcetest_* games/linux-enemyterritory-tce Redistribution limited
texcm-ttf-20010117/* x11-fonts/texcm-ttf Cannot be sold or distributed
with any commercial product
@@ -635,7 +628,6 @@
wgetpro* ftp/wgetpro U.S. Patent 6,041,345
win32/* multimedia/win32-codecs Licensing status of the
codecs is unknown
-xbarcode-*.tar.gz graphics/xbarcode Must not be sold
xchada01.lzh games/xchadance Contains commercial character
data
xephem-* astro/xephem Personal use only
@@ -651,7 +643,6 @@
X-Plane-Net-Install.gz games/linux-x-plane-net-installer Redistribution prohibited
XLIN*.tar.bz2 games/linux-x-plane Redistribution prohibited
xmdiary-* deskutils/xmdiary Do not sell for profit
-xothello.tgz games/xothello Possible trademark infringement
xrisk-* games/xrisk Copyright/trademark violation?
xsmbrowser-* net/xsmbrowser Commercial software
xteddy-* games/xteddy Do not sell for profit
==== //depot/projects/dtrace/ports/MOVED#17 (text+ko) ====
@@ -1,7 +1,7 @@
#
# MOVED - a list of (recently) moved or removed ports
#
-# $FreeBSD: ports/MOVED,v 1.1145 2006/10/02 17:37:20 alepulver Exp $
+# $FreeBSD: ports/MOVED,v 1.1146 2006/10/03 14:28:09 girgen Exp $
#
# Each entry consists of a single line containing the following four
# fields in the order named, separated with the pipe (`|') character:
@@ -2221,7 +2221,6 @@
net-mgmt/nfdump-devel|net-mgmt/nfdump|2006-04-02|Development port no longer needed
devel/py-twistedXish|net-im/py-twistedWords|2006-04-05|Incorporated into net-im/py-twistedWords
devel/upp602|devel/upp|2006-04-05|Was created in a bad directory
-mail/mulberry||2006-04-06|Has expired: mastersite disappeared, no longer maintained by author
textproc/pyenchant|textproc/py-enchant|2006-04-06|Rename to consistency with other Python ports
security/skip||2006-04-06|Port has become obsolete
mail/prom-mew||2006-04-07|Has expired: mastersite disappeared, no longer maintained by author
==== //depot/projects/dtrace/src/crypto/openssh/sshd.c#4 (text+ko) ====
@@ -43,7 +43,7 @@
*/
#include "includes.h"
-__RCSID("$FreeBSD: src/crypto/openssh/sshd.c,v 1.43 2006/09/30 13:38:05 des Exp $");
+__RCSID("$FreeBSD: src/crypto/openssh/sshd.c,v 1.44 2006/10/03 11:33:25 des Exp $");
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -83,7 +83,9 @@
#ifdef __FreeBSD__
#include <resolv.h>
-#ifdef GSSAPI
+#if defined(GSSAPI) && defined(HAVE_GSSAPI_H)
+#include <gssapi.h>
+#elif defined(GSSAPI) && defined(HAVE_GSSAPI_GSSAPI_H)
#include <gssapi/gssapi.h>
#endif
#endif
==== //depot/projects/dtrace/src/gnu/usr.bin/Makefile#4 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.90 2006/08/24 15:46:29 marcel Exp $
+# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.91 2006/10/03 00:03:30 imp Exp $
.include <bsd.own.mk>
@@ -24,10 +24,6 @@
sort \
${_texinfo}
-.if ${MACHINE_ARCH} == "arm"
-MK_GDB= no # not yet
-.endif
-
.if ${MK_CXX} != "no"
_gperf= gperf
.if ${MK_GROFF} != "no"
==== //depot/projects/dtrace/src/lib/libarchive/archive_read_extract.c#5 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.47 2006/09/05 05:59:45 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.48 2006/10/04 02:08:04 kientzle Exp $");
#include <sys/types.h>
#ifdef HAVE_SYS_ACL_H
@@ -85,7 +85,8 @@
struct extract {
mode_t umask;
- mode_t default_dir_mode;
+ mode_t default_dir_mode_initial;
+ mode_t default_dir_mode_final;
struct archive_string create_parent_dir;
struct fixup_entry *fixup_list;
struct fixup_entry *current_fixup;
@@ -108,9 +109,11 @@
* Mode to use for newly-created dirs during extraction; the correct
* mode will be set at the end of the extraction.
*/
-#define SECURE_DIR_MODE 0700
+#define MINIMUM_DIR_MODE 0700
+#define MAXIMUM_DIR_MODE 0775
static int archive_extract_cleanup(struct archive *);
+static int create_extract(struct archive *a);
static int extract_block_device(struct archive *,
struct archive_entry *, int);
static int extract_char_device(struct archive *,
@@ -169,17 +172,11 @@
char *original_filename;
if (a->extract == NULL) {
- a->extract = malloc(sizeof(*a->extract));
- if (a->extract == NULL) {
- archive_set_error(a, ENOMEM, "Can't extract");
- return (ARCHIVE_FATAL);
- }
- a->cleanup_archive_extract = archive_extract_cleanup;
- memset(a->extract, 0, sizeof(*a->extract));
+ ret = create_extract(a);
+ if (ret)
+ return (ret);
}
extract = a->extract;
- umask(extract->umask = umask(0)); /* Read the current umask. */
- extract->default_dir_mode = DEFAULT_DIR_MODE & ~extract->umask;
extract->pst = NULL;
extract->current_fixup = NULL;
restore_pwd = -1;
@@ -293,6 +290,35 @@
return (ret);
}
+
+static int
+create_extract(struct archive *a)
+{
+ struct extract *extract;
+
+ extract = malloc(sizeof(*extract));
+ if (extract == NULL) {
+ archive_set_error(a, ENOMEM, "Can't extract");
+ return (ARCHIVE_FATAL);
+ }
+ a->cleanup_archive_extract = archive_extract_cleanup;
+ memset(extract, 0, sizeof(*extract));
+ umask(extract->umask = umask(0)); /* Read the current umask. */
+ /* Final permission for default dirs. */
+ extract->default_dir_mode_final
+ = DEFAULT_DIR_MODE & ~extract->umask;
+ /* Temporary permission for default dirs during extract. */
+ extract->default_dir_mode_initial
+ = extract->default_dir_mode_final;
+ extract->default_dir_mode_initial |= MINIMUM_DIR_MODE;
+ extract->default_dir_mode_initial &= MAXIMUM_DIR_MODE;
+ /* If the two permissions above are different, then
+ * the "final" permissions will be applied in the
+ * post-extract fixup pass. */
+ a->extract = extract;
+ return (ARCHIVE_OK);
+}
+
/*
* Cleanup function for archive_extract. Mostly, this involves processing
* the fixup list, which is used to address a number of problems:
@@ -508,6 +534,7 @@
struct extract *extract;
struct fixup_entry *fe;
char *path, *p;
+ mode_t restore_mode, final_mode;
extract = a->extract;
extract->pst = NULL; /* Invalidate cached stat data. */
@@ -554,7 +581,16 @@
break;
}
- if (mkdir(path, SECURE_DIR_MODE) == 0)
+ final_mode = archive_entry_mode(entry) &
+ (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO);
+ if ((flags & ARCHIVE_EXTRACT_PERM) == 0)
+ final_mode &= ~extract->umask;
+ /* Constrain the permissions in effect during the restore. */
+ restore_mode = final_mode;
+ restore_mode |= MINIMUM_DIR_MODE;
+ restore_mode &= MAXIMUM_DIR_MODE;
+
+ if (mkdir(path, restore_mode) == 0)
goto success;
if (extract->pst == NULL && stat(path, &extract->st) == 0)
@@ -575,27 +611,26 @@
}
/* One final attempt to create the dir. */
- if (mkdir(path, SECURE_DIR_MODE) != 0) {
+ if (mkdir(path, restore_mode) != 0) {
archive_set_error(a, errno, "Can't create directory");
return (ARCHIVE_WARN);
}
success:
/* Add this dir to the fixup list. */
- fe = current_fixup(a, path);
- fe->fixup |= FIXUP_MODE;
- fe->mode = archive_entry_mode(entry);
- if ((flags & ARCHIVE_EXTRACT_PERM) == 0)
- fe->mode &= ~extract->umask;
+ if (final_mode != restore_mode) {
+ fe = current_fixup(a, path);
+ fe->fixup |= FIXUP_MODE;
+ fe->mode = final_mode;
+ }
if (flags & ARCHIVE_EXTRACT_TIME) {
+ fe = current_fixup(a, path);
fe->fixup |= FIXUP_TIMES;
fe->mtime = archive_entry_mtime(entry);
fe->mtime_nanos = archive_entry_mtime_nsec(entry);
fe->atime = archive_entry_atime(entry);
fe->atime_nanos = archive_entry_atime_nsec(entry);
}
- /* For now, set the mode to SECURE_DIR_MODE. */
- archive_entry_set_mode(entry, SECURE_DIR_MODE);
return (restore_metadata(a, -1, entry, flags));
}
@@ -656,12 +691,9 @@
static int
create_dir_mutable(struct archive *a, char *path, int flags)
{
- mode_t old_umask;
int r;
- old_umask = umask(~SECURE_DIR_MODE);
r = create_dir_recursive(a, path, flags);
- umask(old_umask);
return (r);
}
@@ -735,10 +767,13 @@
return (r);
}
- if (mkdir(path, SECURE_DIR_MODE) == 0) {
- le = new_fixup(a, path);
- le->fixup |= FIXUP_MODE;
- le->mode = extract->default_dir_mode;
+ if (mkdir(path, extract->default_dir_mode_initial) == 0) {
+ if (extract->default_dir_mode_initial
+ != extract->default_dir_mode_final) {
+ le = new_fixup(a, path);
+ le->fixup |= FIXUP_MODE;
+ le->mode = extract->default_dir_mode_final;
+ }
return (ARCHIVE_OK);
}
@@ -1052,12 +1087,26 @@
mode &= ~ S_ISGID;
}
- /*
- * Ensure we change permissions on the object we extracted,
- * and not any incidental symlink that might have gotten in
- * the way.
- */
- if (!S_ISLNK(archive_entry_mode(entry))) {
+ if (S_ISLNK(archive_entry_mode(entry))) {
+#ifdef HAVE_LCHMOD
+ /*
+ * If this is a symlink, use lchmod(). If the
+ * platform doesn't support lchmod(), just skip it as
+ * permissions on symlinks are actually ignored on
+ * most platforms.
+ */
+ if (lchmod(name, mode) != 0) {
+ archive_set_error(a, errno, "Can't set permissions");
+ return (ARCHIVE_WARN);
+ }
+#endif
+ } else if (!S_ISDIR(archive_entry_mode(entry))) {
+ /*
+ * If it's not a symlink and not a dir, then use
+ * fchmod() or chmod(), depending on whether we have
+ * an fd. Dirs get their perms set during the
+ * post-extract fixup, which is handled elsewhere.
+ */
#ifdef HAVE_FCHMOD
if (fd >= 0) {
if (fchmod(fd, mode) != 0) {
@@ -1067,22 +1116,13 @@
}
} else
#endif
- if (chmod(name, mode) != 0) {
- archive_set_error(a, errno, "Can't set permissions");
- return (ARCHIVE_WARN);
- }
-#ifdef HAVE_LCHMOD
- } else {
- /*
- * If lchmod() isn't supported, it's no big deal.
- * Permissions on symlinks are actually ignored on
- * most platforms.
- */
- if (lchmod(name, mode) != 0) {
- archive_set_error(a, errno, "Can't set permissions");
- return (ARCHIVE_WARN);
- }
-#endif
+ /* If this platform lacks fchmod(), then
+ * we'll just use chmod(). */
+ if (chmod(name, mode) != 0) {
+ archive_set_error(a, errno,
+ "Can't set permissions");
+ return (ARCHIVE_WARN);
+ }
}
if (flags & ARCHIVE_EXTRACT_ACL) {
==== //depot/projects/dtrace/src/lib/libc/gen/arc4random.c#3 (text+ko) ====
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/gen/arc4random.c,v 1.10 2004/03/24 14:44:57 green Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/gen/arc4random.c,v 1.11 2006/10/04 01:17:23 ache Exp $");
#include "namespace.h"
#include <sys/types.h>
@@ -61,6 +61,7 @@
static struct arc4_stream rs;
static int rs_initialized;
static int rs_stired;
+static int arc4_count;
static inline u_int8_t arc4_getbyte(struct arc4_stream *);
static void arc4_stir(struct arc4_stream *);
@@ -127,7 +128,8 @@
* by Ilya Mironov.
*/
for (n = 0; n < 1024; n++)
- arc4_getbyte(as);
+ (void) arc4_getbyte(as);
+ arc4_count = 400000;
}
static inline u_int8_t
@@ -172,7 +174,7 @@
static void
arc4_check_stir(void)
{
- if (!rs_stired) {
+ if (!rs_stired || --arc4_count == 0) {
arc4_stir(&rs);
rs_stired = 1;
}
==== //depot/projects/dtrace/src/share/man/man4/ddb.4#5 (text+ko) ====
@@ -57,7 +57,7 @@
.\" Created.
.\" [90/08/30 dbg]
.\"
-.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.33 2006/09/18 15:24:18 ru Exp $
+.\" $FreeBSD: src/share/man/man4/ddb.4,v 1.34 2006/10/03 21:06:19 ru Exp $
.Dd September 15, 2006
.Dt DDB 4
.Os
@@ -151,7 +151,7 @@
browse through the history buffer, and move the cursor within the
current line.
.Sh COMMANDS
-.Bl -ohang
+.Bl -tag -width indent -compact
.It Cm examine
.It Cm x
Display the addressed locations according to the formats in the modifier.
@@ -212,15 +212,18 @@
No alternate format.
.El
.El
+.Pp
.It Cm xf
Examine forward:
Execute an examine command with the last specified parameters to it
except that the next address displayed by it is used as the start address.
+.Pp
.It Cm xb
Examine backward:
Execute an examine command with the last specified parameters to it
except that the last start address subtracted by the size displayed by it
is used as the start address.
+.Pp
.It Cm print Ns Op Cm /acdoruxz
Print
.Ar addr Ns s
@@ -249,6 +252,7 @@
eax = xxxxxx
ecx = yyyyyy
.Ed
+.Pp
.It Xo
.Cm write Ns Op Cm /bhl
.Ar addr Ar expr1 Op Ar "expr2 ..."
@@ -271,6 +275,7 @@
since there is no delimiter between expressions, strange
things may happen.
It is best to enclose each expression in parentheses.
+.Pp
.It Xo
.Cm set
.Li \&$ Ns Ar variable
@@ -280,6 +285,7 @@
Set the named variable or register with the value of
.Ar expr .
Valid variable names are described below.
+.Pp
.It Cm break Ns Op Cm /u
Set a break point at
.Ar addr .
@@ -311,6 +317,7 @@
user space break points may not work correctly.
Setting a break
point at the low-level code paths may also cause strange behavior.
+.Pp
.It Cm delete Ar addr
.It Cm delete Li \&# Ns Ar number
Delete the break point.
@@ -322,6 +329,7 @@
specified in the original
.Cm break
command.
+.Pp
.It Cm step Ns Op Cm /p
Single step
.Ar count
@@ -337,6 +345,7 @@
On machines with software-emulated single-stepping (e.g., pmax),
stepping through code executed by interrupt handlers will probably
do the wrong thing.
+.Pp
.It Cm continue Ns Op Cm /c
Continue execution until a breakpoint or watchpoint.
If the
@@ -348,6 +357,7 @@
when counting, the debugger is really silently single-stepping.
This means that single-stepping on low-level code may cause strange
behavior.
+.Pp
.It Cm until Ns Op Cm /p
Stop at the next call or return instruction.
If the
@@ -356,6 +366,7 @@
cumulative instruction count at each call or return.
Otherwise,
only print when the matching return is hit.
+.Pp
.It Cm next Ns Op Cm /p
.It Cm match Ns Op Cm /p
Stop at the matching return instruction.
@@ -364,6 +375,7 @@
modifier is specified, print the call nesting depth and the
cumulative instruction count at each call or return.
Otherwise, only print when the matching return is hit.
+.Pp
.It Xo
.Cm trace Ns Op Cm /u
.Op Ar frame
@@ -385,6 +397,7 @@
.Sy Warning :
User space stack trace is valid
only if the machine dependent code supports it.
+.Pp
.It Xo
.Cm search Ns Op Cm /bhl
.Ar addr
@@ -400,6 +413,7 @@
The optional
.Ar count
argument limits the search.
+.Pp
.It Cm show all procs Ns Op Cm /m
.It Cm ps Ns Op Cm /m
Display all process information.
@@ -410,6 +424,7 @@
.Li m
modifier will alter the display to show VM map
addresses for the process and not show other info.
+.Pp
.It Cm show registers Ns Op Cm /u
Display the register set.
If the
@@ -422,6 +437,7 @@
.Li u
modifier depends on the machine.
If not supported, incorrect information will be displayed.
+.Pp
.It Cm show geom Op Ar addr
If the
.Ar addr
@@ -430,6 +446,7 @@
.Ar addr
is given, displays details about the given GEOM object (class, geom, provider
or consumer).
+.Pp
.It Xo
.Cm show map Ns Op Cm /f
.Ar addr
@@ -440,6 +457,7 @@
.Li f
modifier is specified the
complete map is printed.
+.Pp
.It Xo
.Cm show object Ns Op Cm /f
.Ar addr
@@ -450,12 +468,16 @@
.Li f
option is specified the
complete object is printed.
+.Pp
.It Cm show vnode Ar addr
Displays details about the given vnode.
+.Pp
.It Cm "show watches"
Displays all watchpoints.
+.Pp
.It Cm reset
Hard reset the system.
+.Pp
.It Xo
.Cm watch
.Ar addr Ns Li \&, Ns Ar size
@@ -472,6 +494,7 @@
Attempts to watch wired kernel memory
may cause unrecoverable error in some systems such as i386.
Watchpoints on user addresses work best.
+.Pp
.It Xo
.Cm hwatch
.Ar addr Ns Li \&, Ns Ar size
@@ -490,11 +513,13 @@
.Cm hwatch
for setting watchpoints on kernel address locations only, and avoid
its use on user mode address spaces.
+.Pp
.It Xo
.Cm dhwatch
.Ar addr Ns Li \&, Ns Ar size
.Xc
Delete specified hardware watchpoint.
+.Pp
.It Cm gdb
Toggles between remote GDB and DDB mode.
In remote GDB mode, another machine is required that runs
@@ -504,6 +529,7 @@
Currently only available on the
.Em i386
architecture.
+.Pp
.It Cm help
Print a short summary of the available commands and command
abbreviations.
==== //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_proto.h#6 (text+ko) ====
@@ -2,8 +2,8 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.66 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.67 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#ifndef _FREEBSD32_SYSPROTO_H_
==== //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscall.h#6 (text+ko) ====
@@ -2,8 +2,8 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.64 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.65 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#define FREEBSD32_SYS_syscall 0
==== //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_syscalls.c#6 (text+ko) ====
@@ -2,8 +2,8 @@
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.55 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.56 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
const char *freebsd32_syscallnames[] = {
==== //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_sysent.c#6 (text+ko) ====
@@ -2,8 +2,8 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.65 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.66 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#include "opt_compat.h"
==== //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.master#7 (text+ko) ====
@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp $
+ $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp $
; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
; from: src/sys/kern/syscalls.master 1.107
;
@@ -141,7 +141,7 @@
61 AUE_CHROOT NOPROTO { int chroot(char *path); }
62 AUE_FSTAT OBSOL ofstat
63 AUE_NULL OBSOL ogetkerninfo
-64 AUE_GETPAGESIZE OBSOL ogetpagesize
+64 AUE_NULL OBSOL ogetpagesize
; XXX implement (not OBSOL at all)
65 AUE_MSYNC NOPROTO { int msync(void *addr, size_t len, \
int flags); }
==== //depot/projects/dtrace/src/sys/dev/aic/aic_pccard.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic/aic_pccard.c,v 1.17 2005/09/20 19:45:08 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic/aic_pccard.c,v 1.18 2006/10/03 04:51:18 imp Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -54,7 +54,7 @@
static int aic_pccard_probe(device_t);
static int aic_pccard_attach(device_t);
-const struct pccard_product aic_pccard_products[] = {
+static const struct pccard_product aic_pccard_products[] = {
PCMCIA_CARD(ADAPTEC, APA1460),
PCMCIA_CARD(ADAPTEC, APA1460A),
PCMCIA_CARD(NEWMEDIA, BUSTOASTER),
==== //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#12 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.149 2006/09/23 18:55:49 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.150 2006/10/03 09:31:49 glebius Exp $");
/*
* Broadcom BCM570x family gigabit ethernet driver for FreeBSD.
@@ -191,7 +191,6 @@
{ SK_VENDORID, SK_DEVICEID_ALTIMA },
- { TC_VENDORID, TC_DEVICEID_3C985 },
{ TC_VENDORID, TC_DEVICEID_3C996 },
{ 0, 0 }
==== //depot/projects/dtrace/src/sys/dev/bge/if_bgereg.h#8 (text+ko) ====
@@ -30,7 +30,7 @@
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.55 2006/09/09 03:36:57 ambrisko Exp $
+ * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.56 2006/10/03 09:31:49 glebius Exp $
*/
/*
@@ -2027,10 +2027,9 @@
#define ALTEON_DEVICEID_BCM5701 0x0004
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list