src/server/config/mimeconf.c

changeset 392
0aef555055ee
parent 255
b5d15a4a19f5
child 415
d938228c382e
equal deleted inserted replaced
391:80ee93a7d257 392:0aef555055ee
39 } ucx_regdestr; 39 } ucx_regdestr;
40 40
41 MimeConfig *load_mime_config(const char *file) { 41 MimeConfig *load_mime_config(const char *file) {
42 FILE *in = fopen(file, "r"); 42 FILE *in = fopen(file, "r");
43 if(in == NULL) { 43 if(in == NULL) {
44 log_ereport(LOG_FAILURE, "Cannot load mime config file %s: %s", file, strerror(errno));
44 return NULL; 45 return NULL;
45 } 46 }
46 47
47 MimeConfig *conf = malloc(sizeof(MimeConfig)); 48 MimeConfig *conf = malloc(sizeof(MimeConfig));
48 conf->parser.parse = mimeconf_parse; 49 conf->parser.parse = mimeconf_parse;
49 conf->directives = NULL; 50 conf->directives = NULL;
50 conf->ntypes = 0; 51 conf->ntypes = 0;
51 int r = cfg_parse_basic_file((ConfigParser*)conf, in); 52 int r = cfg_parse_basic_file((ConfigParser*)conf, in);
52 if(r != 0) { 53 if(r != 0) {
54 log_ereport(LOG_FAILURE, "Cannot parse mime config file %s", file);
53 fclose(in); 55 fclose(in);
54 free(conf); 56 free(conf);
55 // TODO: free 57 // TODO: free
56 return NULL; 58 return NULL;
57 } 59 }

mercurial