FreeBSD Manual Pages
MBKFOPEN(3) MBK UTILITY FUNCTIONS MBKFOPEN(3) NAME mbkfopen - open a file with several search paths SYNOPSIS #include "mut.h" FILE *mbkfopen(name, extension, mode) char *name, *extension, *mode; PARAMETERS name Name of the file to be opened extension Extension to the file name model File opening mode DESCRIPTION mbkfopen opens a file, searching it through the paths given in the en- vironment variables MBK_CATA_LIB(1) and MBK_WORK_LIB(1). Its main is- sue is to enable simple file access for any program that works with mbk path environment variables. The file to be opened is called name.extension, if extension is not NULL, else it is name. If extension is the empty string, "", then the file name will be name. . The legal values for mode are READ_TEXT opens for reading WRITE_TEXT discards and opens for writing since disk access should be a straight forward op- eration knowing mbk's needs. The search algorithm depends on the value of mode. If mode is WRITE_TEXT, then the file is open for writing in MBK_WORK_LIB(1). If mode is READ_TEXT then the file is first searched through MBK_WORK_LIB(1), and if not found, through each directory specified in MBK_CATA_LIB(1), in the order of declaration under unix. No internal hash table is generated, in order to let the user choose its directory priority. As soon as the file is found, it is opened. There is no check for redundant files in the specified paths, since it is neither illegal nor bad to have many files with the same names. RETURN VALUE mbkfopen returns a pointer to the opened file. If the file read or write access are violated, or the file not found, a NULL pointer is re- turned. ERROR "*** mbk error *** mbkfopen : unknown file opening mode mode" The mode parameter is not one of the two legal values. EXAMPLE #include "mut.h" #include "mph.h" phfig_list *load_vti_ph(name) char *name; { FILE *file; if ((file = mbkfopen(name, "cp", READ_TEXT)) == NULL) { (void)fprintf(stderr, "Pfhhh, can't open name.cp\n"); EXIT(); } ph_parse(file); } SEE ALSO mbk(1), MBK_CATA_LIB(1), MBK_WORK_LIB(1), loadlofig(3), loadphfig(3), savelofig(3), savephfig(3), fopen(3). ASIM/LIP6 October 1, 1997 MBKFOPEN(3)
NAME | SYNOPSIS | PARAMETERS | DESCRIPTION | RETURN VALUE | ERROR | EXAMPLE | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mbkfopen&sektion=3&manpath=FreeBSD+Ports+15.0>
