VOP_* changes causes NULL ptr dereference for acl_get_file(3)
Poul-Henning Kamp
phk at phk.freebsd.dk
Thu Dec 2 23:07:18 PST 2004
Can you try this patch instead:
Index: kern/vfs_default.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/vfs_default.c,v
retrieving revision 1.109
diff -u -r1.109 vfs_default.c
--- kern/vfs_default.c 1 Dec 2004 23:16:36 -0000 1.109
+++ kern/vfs_default.c 3 Dec 2004 07:06:35 -0000
@@ -72,6 +72,8 @@
struct vop_vector default_vnodeops = {
.vop_default = NULL,
+ .vop_bypass = VOP_EOPNOTSUPP,
+
.vop_advlock = VOP_EINVAL,
.vop_bmap = vop_stdbmap,
.vop_close = VOP_NULL,
@@ -79,7 +81,7 @@
.vop_destroyvobject = vop_stddestroyvobject,
.vop_fsync = VOP_NULL,
.vop_getpages = vop_stdgetpages,
- .vop_getvobject = vop_stdgetvobject,
+ .vop_getvobject = vop_stdgetvobject,
.vop_getwritemount = vop_stdgetwritemount,
.vop_inactive = vop_stdinactive,
.vop_ioctl = VOP_ENOTTY,
In message <Pine.NEB.3.96L.1041202233327.34029M-100000 at fledge.watson.org>, Robe
rt Watson writes:
>On Thu, 2 Dec 2004, Mark Santcroos wrote:
>
>> I need at least the following patch to keep my system alive. A simple
>> call to acl_get_file(3) is enough to crash the machine.
>>
>> You will have to think a bit more about how you want to initialize stuff
>> or about better defaults for cases like ACLs.
>
>Should probably be using VOP_EOPNOTSUPP rather than VOP_EINVAL, I think.
>Also, it's likely that if you need a vop_getacl entry here, you probably
>also want a vop_setacl and a vop_checkacl entry.
>
>Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
>robert at fledge.watson.org Principal Research Scientist, McAfee Research
>
>
>>
>> Mark
>>
>> ==== //depot/projects/custom/kern/vfs_default.c#35 - /home/marks/proj/perforce/projects/custom/kern/vfs_default.c ====
>> @@ -95,6 +95,7 @@
>> .vop_revoke = VOP_PANIC,
>> .vop_strategy = vop_nostrategy,
>> .vop_unlock = vop_stdunlock,
>> + .vop_getacl = VOP_EINVAL,
>> };
>>
>> /*
>>
>> --
>> RIPE NCC - Delft University of Technology - The FreeBSD Project
> marks at ripe.net - m.a.santcroos at ewi.tudelft.nl - marks at freebsd.org
>> _______________________________________________
>> freebsd-current at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>>
>
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
More information about the freebsd-current
mailing list