PERFORCE change 18586 for review
Robert Watson
rwatson at freebsd.org
Thu Oct 3 15:16:55 GMT 2002
I think a preferred solution for this would be the one adopted by chmod
and all other file attribute setting tools in the system: operate on the
symlink target unless '-h' is explicitly passed by the caller.
Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org Network Associates Laboratories
On Thu, 3 Oct 2002, Brian Feldman wrote:
> http://people.freebsd.org/~peter/p4db/chv.cgi?CH=18586
>
> Change 18586 by green at green_laptop_2 on 2002/10/03 07:15:58
>
> Don't uselessly follow symlinks in the extattr utilities.
>
> Affected files ...
>
> .. //depot/projects/trustedbsd/mac/usr.sbin/extattr/rmextattr.8#2 edit
> .. //depot/projects/trustedbsd/mac/usr.sbin/extattr/rmextattr.c#3 edit
>
> Differences ...
>
> ==== //depot/projects/trustedbsd/mac/usr.sbin/extattr/rmextattr.8#2 (text+ko) ====
>
> @@ -77,6 +77,9 @@
> the name of the target file or directory,
> .Ar attrvalue
> a string to store in the attribute.
> +Since it is not useful to operate on the target of a symbolic link, the given
> +.Ar filename
> +is not followed if it is one.
> .Pp
> The following options are available:
> .Bl -tag -width flag
>
> ==== //depot/projects/trustedbsd/mac/usr.sbin/extattr/rmextattr.c#3 (text+ko) ====
>
> @@ -178,25 +178,25 @@
> for (arg_counter = 0; arg_counter < argc; arg_counter++) {
> switch (what) {
> case EARM:
> - error = extattr_delete_file(argv[arg_counter],
> + error = extattr_delete_link(argv[arg_counter],
> attrnamespace, attrname);
> if (error >= 0)
> continue;
> break;
> case EASET:
> - error = extattr_set_file(argv[arg_counter],
> + error = extattr_set_link(argv[arg_counter],
> attrnamespace, attrname, buf, strlen(buf));
> if (error >= 0)
> continue;
> break;
> case EALS:
> case EAGET:
> - error = extattr_get_file(argv[arg_counter],
> + error = extattr_get_link(argv[arg_counter],
> attrnamespace, attrname, NULL, 0);
> if (error < 0)
> break;
> mkbuf(&buf, &buflen, error);
> - error = extattr_get_file(argv[arg_counter],
> + error = extattr_get_link(argv[arg_counter],
> attrnamespace, attrname, buf, buflen);
> if (error < 0)
> break;
>
To Unsubscribe: send mail to majordomo at trustedbsd.org
with "unsubscribe trustedbsd-cvs" in the body of the message
More information about the trustedbsd-cvs
mailing list