On Dec,Thursday 23 2010, at 6:46 PM, Christos Zoulas wrote: > Module Name: src > Committed By: christos > Date: Thu Dec 23 17:46:55 UTC 2010 > > Modified Files: > src/external/gpl2/lvm2: lvm2tools.mk > src/external/gpl2/lvm2/dist/daemons/cmirrord: functions.c > src/external/gpl2/lvm2/dist/libdm/ioctl: libdm-iface.c > libdm-nbsd-iface.c > src/external/gpl2/lvm2/lib/libdevmapper: Makefile > src/external/gpl2/lvm2/sbin/dmsetup: Makefile > > Log Message: > PR/44267: Michael van Elst: LVM devices have wrong permissions > - Centralize CPPFLAGS for DM_DEVICE_{UID,GID,MODE} > - Make DM_DEVICE_GID operator DM_DEVICE_MODE 0640 to be more NetBSD like > - make all the code use DM_DEVICE_MODE instead of hard-coding. > - make sure that all mknod calls are followed by a chown call. > > > To generate a diff of this commit: > cvs rdiff -u -r1.1 -r1.2 src/external/gpl2/lvm2/lvm2tools.mk > cvs rdiff -u -r1.1.1.1 -r1.2 \ > src/external/gpl2/lvm2/dist/daemons/cmirrord/functions.c > cvs rdiff -u -r1.1.1.3 -r1.2 \ > src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-iface.c > cvs rdiff -u -r1.7 -r1.8 \ > src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c > cvs rdiff -u -r1.4 -r1.5 src/external/gpl2/lvm2/lib/libdevmapper/Makefile > cvs rdiff -u -r1.4 -r1.5 src/external/gpl2/lvm2/sbin/dmsetup/Makefile > > Please note that diffs are not public domain; they are subject to the > copyright notices on the relevant files. > > Modified files: > > Index: src/external/gpl2/lvm2/lvm2tools.mk > diff -u src/external/gpl2/lvm2/lvm2tools.mk:1.1 > src/external/gpl2/lvm2/lvm2tools.mk:1.2 > --- src/external/gpl2/lvm2/lvm2tools.mk:1.1 Sun Dec 21 19:57:58 2008 > +++ src/external/gpl2/lvm2/lvm2tools.mk Thu Dec 23 12:46:54 2010 > @@ -1,4 +1,4 @@ > -# $NetBSD: lvm2tools.mk,v 1.1 2008/12/22 00:57:58 haad Exp $ > +# $NetBSD: lvm2tools.mk,v 1.2 2010/12/23 17:46:54 christos Exp $ > > .include <bsd.own.mk> > > @@ -9,6 +9,9 @@ > LIBDM_DISTDIR= ${NETBSDSRCDIR}/external/gpl2/lvm2/dist/libdm > LIBDM_INCLUDE= ${NETBSDSRCDIR}/external/gpl2/lvm2/dist/include > > +# root:operator [cb]rw-r----- > +CPPFLAGS+=-DDM_DEVICE_UID=0 -DDM_DEVICE_GID=5 -DDM_DEVICE_MODE=0640 > + > # > #LIBDM_OBJDIR.libdevmapper=${LIBDM_SRCDIR}/lib/libdevmapper/ > # > > Index: src/external/gpl2/lvm2/dist/daemons/cmirrord/functions.c
This file is not even build please revert your change. > Index: src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-iface.c This is original linux file which is not build, please revert your change. > > Index: src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c > diff -u src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c:1.7 > src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c:1.8 > --- src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c:1.7 Fri Mar > 12 11:24:40 2010 > +++ src/external/gpl2/lvm2/dist/libdm/ioctl/libdm-nbsd-iface.c Thu Dec > 23 12:46:54 2010 > @@ -1,4 +1,4 @@ > -/* $NetBSD: libdm-nbsd-iface.c,v 1.7 2010/03/12 16:24:40 haad Exp $ > */ > +/* $NetBSD: libdm-nbsd-iface.c,v 1.8 2010/12/23 17:46:54 christos Exp $ > */ > > /* > * Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved. > @@ -162,11 +162,15 @@ > > log_verbose("Creating device %s (%u, %u)", control, major, minor); > > - if (mknod(control, S_IFCHR | S_IRUSR | S_IWUSR, > + if (mknod(control, S_IFCHR | DM_DEVICE_MODE, > MKDEV(major, minor)) < 0) { > log_sys_error("mknod", control); > return 0; > } > + if (chown(control, DM_DEVICE_UID, DM_DEVICE_GID) == -1) { > + log_sys_error("chown", control); > + return 0; > + } PR is about block devices not about char control devices this part changes /dev/mapper/control do we really want to have 640 there if yes I'm fine with it I just want to be sure that you wanted to do that. Regards Adam.