CFGDDEV(3x,L) AIX Technical Reference CFGDDEV(3x,L) ------------------------------------------------------------------------------- cfgddev PURPOSE Deletes a device. LIBRARY Run-time Services Library (librts.a) SYNTAX #include int cfgddev (master, system, dstname, vflag, cflag) char *master, *system, *dstname; int vflag; int cflag; DESCRIPTION The cfgddev subroutine deletes information about devices and device drivers from the system configuration. The master parameter points to the full path name of the master file. The system parameter points to the full path name of the system file. These files are usually /etc/master and /etc/system, respectively. The dstname parameter points to a string containing the name of the stanza in the system file of the device to be deleted. The vflag parameter is either 1 (for yes) or 0 (for no). If the vflag parameter is 1, then cfgddev executes the osconfig command with the -d dstname flag. The osconfig command then processes the named stanza for driver deletion and produces a shell procedure. The cfgddev subroutine then runs this shell procedure to delete the special file (/dev file) for the device. If the osconfig command returns an error, then the device is not deleted. The cflag parameter is either 1 (for no) or 0 (for yes), for osconfig to call customize helpers when deleting devices. If the device stanza named by the dstname parameter contains the specproc keyword, then the program specified by the value of this keyword is executed to perform any special processing required when deleting this device. The value of the specproc keyword must be the full path name of an executable file. The following arguments are passed to the program using the argv mechanism described in "exec: execl, execv, execle, execve, execlp, execvp." All of them are passed as character strings. Processed July 12, 1991 CFGDDEV(3x,L) 1 CFGDDEV(3x,L) AIX Technical Reference CFGDDEV(3x,L) argv[0] The full path name of the special-processing program argv[1] The full path name of the master file argv[2] The full path name of the system file argv[3] The name of the device stanza argv[4] The character string "d", indicating deletion. If the special processing program fails, then the device is still deleted from the system, but some additional steps may be required to clean up the system. The device stanza associated with the deleted device is then deleted from the system file. RETURN VALUE Upon successful completion, the value CFG_SUCC is returned. If the cfgddev subroutine fails then one of the following values is returned: CFG_CLSE An error was detected while trying to close a file. CFG_DVND The device could not be deleted from the system file. CFG_DVNF The device to be deleted cannot be found in the system file. CFG_FCOR The master or system file is set up incorrectly. CFG_MALF Memory allocation failed because of insufficient space. CFG_OPNE An error was detected while trying to open a file. CFG_SLPF Special processing failed. The device is deleted, but some additional steps may be required to clean up the system. CFG_OCFG The osconfig command failed. CFG_REBOOT AIX must be rebooted by calling the cfgaply routine, although cfgddev was successful. cfgddev will return CFG_REBOOT if the last stanza in /etc/system associated with a AIX device driver is deleted and the mandatory attribute in the driver's /etc/master stanza is set to false. CFG_RBSLPF Special processing failed and a AIX reboot must be performed. RELATED INFORMATION In this book: "attributes," "master," and "system." The osconfig command in AIX Operating System Commands Reference. Processed July 12, 1991 CFGDDEV(3x,L) 2