Date: 06 Aug 1999 09:52:14 -0400 From: Robert Sanders <rsanders@mindspring.net> To: hackers@freebsd.org Subject: Re: Jail syscalls Message-ID: <knemhh3tkh.fsf@xena.mindspring.com> In-Reply-To: Matthew Dillon's message of "Wed, 4 Aug 1999 11:04:06 -0700 (PDT)" References: <Pine.BSF.4.10.9908040949300.385-100000@salmon.nlsystems.com> <199908041804.LAA31039@apollo.backplane.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthew Dillon <dillon@apollo.backplane.com> writes: > I think we basically have two choices: > > * Pass the sizeof(struct) as part of the system call. Please, not as > part of the structure! That would make this syscall the odd-man-out > compared to all the other syscalls that take size arguments. > > * Make the first field of the structure a real version id, one that is > taken from the same include file that the structure was defined in, > and require that the field be filled in. And, of course, passing the version number as an argument to the syscall*. That has the advantage of not having to initialize the structure version field, not having to worry about incompatible structures of equal size, and not unnecessarily enlarging the structure with version information. Embedded version numbers would win in situations wherein modules compiled with old header files were passing structures to modules that were compiled with new header files, and that such structures were given as arguments to syscalls invoked in the new module. That seems pretty unlikely. regards, -- Robert * The really perverse might suggest that this versioning be hidden from the user via macro/inline procedure trickery. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?knemhh3tkh.fsf>