/* -*-c-*-
*
- * $Id: file.c,v 1.1 1999/07/26 23:33:32 mdw Exp $
+ * $Id: file.c,v 1.5 2002/02/22 23:43:32 mdw Exp $
*
* File source and target
*
/*----- Revision history --------------------------------------------------*
*
* $Log: file.c,v $
+ * Revision 1.5 2002/02/22 23:43:32 mdw
+ * Call @xfree@ rather than @free@.
+ *
+ * Revision 1.4 2001/02/03 20:30:03 mdw
+ * Support re-reading config files on SIGHUP.
+ *
+ * Revision 1.3 1999/12/22 15:43:47 mdw
+ * Fix log messages.
+ *
+ * Revision 1.2 1999/10/22 22:47:13 mdw
+ * New (empty) endpoint method required.
+ *
* Revision 1.1 1999/07/26 23:33:32 mdw
* New sources and targets.
*
/* --- Endpoint operations table --- */
-static endpt_ops fept_ops = { 0, fept_wclose, fept_close };
+static endpt_ops fept_ops = { 0, 0, fept_wclose, fept_close };
/*----- General operations on sources and targets -------------------------*/
if (fd != -1) {
if (fattr_apply(f->out.u.name, &f->fa)) {
- fw_log(-1, "[%s] couldn't apply file attributes: %s",
+ fw_log(-1, "[%s] couldn't apply file attributes to `%s': %s",
desc, f->out.u.name, strerror(errno));
}
} else if ((fd = open(f->out.u.name, m & ~O_CREAT)) < 0) {
static void file_destroy(fdata *f)
{
if (f->in.type == FTYPE_NAME)
- free(f->in.u.name);
+ xfree(f->in.u.name);
if (f->out.type == FTYPE_NAME)
- free(f->out.u.name);
+ xfree(f->out.u.name);
}
/*----- File source description -------------------------------------------*/
static void fsource_destroy(source *s)
{
fsource *fs = (fsource *)s;
-
- /* free(fs->s.desc); */
+ xfree(fs->s.desc);
file_destroy(&fs->f);
DESTROY(fs);
}
{
ftarget *ft = (ftarget *)t;
file_destroy(&ft->f);
- /* free(ft->t.desc); */
+ xfree(ft->t.desc);
DESTROY(ft);
}