Lines Matching +full:gen +full:- +full:2

9  * Friedrich-Alexander Universitaet Erlangen-Nuernberg, Germany
66 fgp->fp = NULL; in filegen_init()
67 fgp->dir = estrdup(dir); in filegen_init()
68 fgp->fname = estrdup(fname); in filegen_init()
69 fgp->id_lo = 0; in filegen_init()
70 fgp->id_hi = 0; in filegen_init()
71 fgp->type = FILEGEN_DAY; in filegen_init()
72 fgp->flag = FGEN_FLAG_LINK; /* not yet enabled !!*/ in filegen_init()
77 * filegen_uninit - free memory allocated by filegen_init
85 free(fgp->dir); in filegen_uninit()
86 free(fgp->fname); in filegen_uninit()
92 * open a file generation according to the current settings of gen
98 FILEGEN * gen, in filegen_open() argument
113 len = strlen(gen->dir) + strlen(gen->fname) + 65; in filegen_open()
117 snprintf(filename, len, "%s%s", gen->dir, gen->fname); in filegen_open()
122 suflen = len - suflen; in filegen_open()
125 fullname[len - 1] = '\0'; in filegen_open()
127 switch (gen->type) { in filegen_open()
132 "\"%s\" - reverting to FILEGEN_NONE", in filegen_open()
133 gen->type, filename); in filegen_open()
134 gen->type = FILEGEN_NONE; in filegen_open()
142 gen->id_lo = getpid(); in filegen_open()
143 gen->id_hi = 0; in filegen_open()
145 SUFFIX_SEP, gen->id_lo); in filegen_open()
158 gen->id_lo = ntpcal_date_to_ntp(&cal); in filegen_open()
159 gen->id_hi = (u_int32)(gen->id_lo + SECSPERDAY); in filegen_open()
168 gen->id_lo = isocal_date_to_ntp(&iso); in filegen_open()
169 gen->id_hi = (u_int32)(gen->id_lo + 7 * SECSPERDAY); in filegen_open()
178 gen->id_lo = ntpcal_date_to_ntp(&cal); in filegen_open()
180 gen->id_hi = ntpcal_date_to_ntp(&cal); in filegen_open()
189 gen->id_lo = ntpcal_date_to_ntp(&cal); in filegen_open()
191 gen->id_hi = ntpcal_date_to_ntp(&cal); in filegen_open()
195 gen->id_lo = current_time - (current_time % SECSPERDAY); in filegen_open()
196 gen->id_hi = gen->id_lo + SECSPERDAY; in filegen_open()
198 SUFFIX_SEP, gen->id_lo); in filegen_open()
202 if ('\0' != fullname[len - 1]) { in filegen_open()
203 fullname[len - 1] = '\0'; in filegen_open()
208 if (FILEGEN_NONE != gen->type) { in filegen_open()
228 * Oh, it is not linked - try to save it in filegen_open()
283 gen->type, stamp, fullname)); in filegen_open()
288 /* open failed -- keep previous state in filegen_open()
300 if (NULL != gen->fp) { in filegen_open()
301 fclose(gen->fp); in filegen_open()
302 gen->fp = NULL; in filegen_open()
304 gen->fp = fp; in filegen_open()
306 if (gen->flag & FGEN_FLAG_LINK) { in filegen_open()
310 * gen->basename spanning directory levels in filegen_open()
318 /* Windows NT does not support file links -Greg Schueman 1/18/97 */ in filegen_open()
340 * this function sets up gen->fp to point to the correct
349 FILEGEN * gen, in filegen_setup() argument
356 if (!(gen->flag & FGEN_FLAG_ENABLED)) { in filegen_setup()
357 if (NULL != gen->fp) { in filegen_setup()
358 fclose(gen->fp); in filegen_setup()
359 gen->fp = NULL; in filegen_setup()
364 switch (gen->type) { in filegen_setup()
372 current = ((int)gen->id_lo == getpid()); in filegen_setup()
376 current = (gen->id_lo <= current_time) && in filegen_setup()
377 (gen->id_hi > current_time); in filegen_setup()
384 current = (gen->id_lo <= now) && in filegen_setup()
385 (gen->id_hi > now); in filegen_setup()
392 if (NULL == gen->fp || !current) { in filegen_setup()
393 DPRINTF(1, ("filegen %0x %u\n", gen->type, now)); in filegen_setup()
395 filegen_open(gen, now, &pivot); in filegen_setup()
405 FILEGEN * gen, in filegen_config() argument
419 if (strcmp(dir, gen->dir) == 0 && strcmp(fname, gen->fname) == 0 in filegen_config()
420 && type == gen->type && flag == gen->flag) in filegen_config()
429 if (NULL != gen->fp) { in filegen_config()
430 fclose(gen->fp); in filegen_config()
431 gen->fp = NULL; in filegen_config()
438 "\tdir:\t%s -> %s\n" in filegen_config()
439 "\tfname:\t%s -> %s\n" in filegen_config()
440 "\ttype:\t%d -> %d\n" in filegen_config()
441 "\tflag: %x -> %x\n", in filegen_config()
442 gen->dir, dir, in filegen_config()
443 gen->fname, fname, in filegen_config()
444 gen->type, type, in filegen_config()
445 gen->flag, flag)); in filegen_config()
447 if (strcmp(gen->dir, dir) != 0) { in filegen_config()
448 free(gen->dir); in filegen_config()
449 gen->dir = estrdup(dir); in filegen_config()
452 if (strcmp(gen->fname, fname) != 0) { in filegen_config()
453 free(gen->fname); in filegen_config()
454 gen->fname = estrdup(fname); in filegen_config()
456 gen->type = (u_char)type; in filegen_config()
457 gen->flag = (u_char)flag; in filegen_config()
467 filegen_setup(gen, now.l_ui); in filegen_config()
521 && ('\0' == p[2] || DIR_SEP == p[2])) in valid_fileref()
548 if (f->name == name || strcmp(name, f->name) == 0) { in filegen_get()
550 name, f->filegen)); in filegen_get()
551 return f->filegen; in filegen_get()
553 f = f->next; in filegen_get()
575 if ((*ppfe)->name == name in filegen_register()
576 || !strcmp((*ppfe)->name, name)) { in filegen_register()
579 (*ppfe)->filegen)); in filegen_register()
581 (*ppfe)->filegen = filegen; in filegen_register()
584 ppfe = &((*ppfe)->next); in filegen_register()
589 (*ppfe)->next = NULL; in filegen_register()
590 (*ppfe)->name = estrdup(name); in filegen_register()
591 (*ppfe)->filegen = filegen; in filegen_register()
600 * filegen_statsdir() - reset each filegen entry's dir to statsdir.
607 for (f = filegen_registry; f != NULL; f = f->next) in filegen_statsdir()
608 filegen_config(f->filegen, statsdir, f->filegen->fname, in filegen_statsdir()
609 f->filegen->type, f->filegen->flag); in filegen_statsdir()
632 if ((*ppfe)->name == name in filegen_unregister()
633 || !strcmp((*ppfe)->name, name)) { in filegen_unregister()
635 *ppfe = (*ppfe)->next; in filegen_unregister()
636 fg = pfe->filegen; in filegen_unregister()
637 free(pfe->name); in filegen_unregister()
642 ppfe = &((*ppfe)->next); in filegen_unregister()