2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
8 #include <proto/exec.h>
10 #include "dos_intern.h"
12 /*****************************************************************************
15 #include <proto/dos.h>
17 AROS_LH2(LONG
, Relabel
,
20 AROS_LHA(CONST_STRPTR
, drive
, D1
),
21 AROS_LHA(CONST_STRPTR
, newname
, D2
),
24 struct DosLibrary
*, DOSBase
, 120, Dos
)
28 Change names of a volume.
32 drive -- The name of the device to rename (including the ':').
33 newname -- The new name for the device (without the ':').
37 A boolean telling whether the name change was successful or not.
49 *****************************************************************************/
53 struct IOFileSys iofs
;
55 /* Prepare I/O request. */
56 InitIOFS(&iofs
, FSA_RELABEL
, DOSBase
);
58 iofs
.IOFS
.io_Device
= GetDevice(drive
, &iofs
.IOFS
.io_Unit
, DOSBase
);
60 if(iofs
.IOFS
.io_Device
== NULL
)
65 iofs
.io_Union
.io_RELABEL
.io_NewName
= newname
;
66 iofs
.io_Union
.io_RELABEL
.io_Result
= FALSE
;
70 SetIoErr(iofs
.io_DosError
);
72 if(iofs
.io_DosError
!= 0)
77 return iofs
.io_Union
.io_RELABEL
.io_Result
? DOSTRUE
: DOSFALSE
;