[aklug] Re: regarding permission bit

From: Christopher Howard <choward@indicium.us>
Date: Sun Nov 23 2008 - 00:34:00 AKST

On Fri, 21 Nov 2008, Arthur Corliss wrote:

> On Thu, 20 Nov 2008, Christopher Howard wrote:
>
>> Well, part my idea in understanding how to directly manipulate the file
>> type would be to better understand how the layout and location of the
>> appropriate bits worked. Another idea would be able to learn how to
>> generate such file types without relying on an intermediate GNU utlity,
>> which could be more efficient inside of a program, I imagine.
>>
>> I've been learning lately in C how to modify individual bits of stored
>> data, and was exploring various possibilities of how I might apply this
>> knowledge.
>
> If you want to do these kinds of operations in C you should look at the man
> pages for fchmod(2) and fstat(2). The latter in particular shows you the
> following:
>
> S_IFMT 0170000 bit mask for the file type bit fields
> S_IFSOCK 0140000 socket
> S_IFLNK 0120000 symbolic link
> S_IFREG 0100000 regular file
> S_IFBLK 0060000 block device
> S_IFDIR 0040000 directory
> S_IFCHR 0020000 character device
> S_IFIFO 0010000 FIFO
> S_ISUID 0004000 set UID bit
> S_ISGID 0002000 set-group-ID bit (see below)
> S_ISVTX 0001000 sticky bit (see below)
> S_IRWXU 00700 mask for file owner permissions
> S_IRUSR 00400 owner has read permission
> S_IWUSR 00200 owner has write permission
> S_IXUSR 00100 owner has execute permission
> S_IRWXG 00070 mask for group permissions
> S_IRGRP 00040 group has read permission
> S_IWGRP 00020 group has write permission
> S_IXGRP 00010 group has execute permission
> S_IRWXO 00007 mask for permissions for others (not in
> group)
> S_IROTH 00004 others have read permission
> S_IWOTH 00002 others have write permission
> S_IXOTH 00001 others have execute permission
>
> BTW: when it comes to file types (directories, files, sockets, etc) you
> can't "manipulate" or convert files. You can only unlink the original file
> and create a new equivalently named file of a different type.
>
> --Arthur Corliss
> Live Free or Die
>

Cool stuff! Thanks!

--
Christopher Howard
choward@indicium.us
http://www.indicium.us
---------
To unsubscribe, send email to <aklug-request@aklug.org>
with 'unsubscribe' in the message body.
Received on Sun Nov 23 00:36:31 2008

This archive was generated by hypermail 2.1.8 : Sun Nov 23 2008 - 00:36:31 AKST