2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
5 Desc: Set the owner of a file.
8 #include <proto/exec.h>
9 #include <dos/dosextens.h>
10 #include <dos/filesystem.h>
11 #include <proto/dos.h>
12 #include "dos_intern.h"
14 /*****************************************************************************
17 #include <proto/dos.h>
19 AROS_LH2(BOOL
, SetOwner
,
22 AROS_LHA(STRPTR
, name
, D1
),
23 AROS_LHA(ULONG
, owner_info
, D2
),
26 struct DosLibrary
*, DOSBase
, 166, Dos
)
31 name -- name of the file
32 owner_info -- (UID << 16) + GID
35 != 0 if all went well, 0 else. IoErr() gives additional
36 information in that case.
48 *****************************************************************************/
52 /* Get pointer to I/O request. Use stackspace for now. */
53 struct IOFileSys iofs
;
55 /* Prepare I/O request. */
56 InitIOFS(&iofs
, FSA_SET_OWNER
, DOSBase
);
58 iofs
.io_Union
.io_SET_OWNER
.io_UID
= owner_info
>> 16;
59 iofs
.io_Union
.io_SET_OWNER
.io_GID
= owner_info
& 0xffff;
61 return DoIOFS(&iofs
, NULL
, name
, DOSBase
) == 0;