1*8ccd4a63SDavid du Colombier #include "headers.h"
2*8ccd4a63SDavid du Colombier
3*8ccd4a63SDavid du Colombier static void
smbfilefree(SmbFile ** fp)4*8ccd4a63SDavid du Colombier smbfilefree(SmbFile **fp)
5*8ccd4a63SDavid du Colombier {
6*8ccd4a63SDavid du Colombier SmbFile *f;
7*8ccd4a63SDavid du Colombier f = *fp;
8*8ccd4a63SDavid du Colombier if (f) {
9*8ccd4a63SDavid du Colombier smbsharedfileput(f, f->sf, f->share);
10*8ccd4a63SDavid du Colombier if (f->fd >= 0)
11*8ccd4a63SDavid du Colombier close(f->fd);
12*8ccd4a63SDavid du Colombier free(f->name);
13*8ccd4a63SDavid du Colombier free(f);
14*8ccd4a63SDavid du Colombier *fp = nil;
15*8ccd4a63SDavid du Colombier }
16*8ccd4a63SDavid du Colombier }
17*8ccd4a63SDavid du Colombier
18*8ccd4a63SDavid du Colombier void
smbfileclose(SmbSession * s,SmbFile * f)19*8ccd4a63SDavid du Colombier smbfileclose(SmbSession *s, SmbFile *f)
20*8ccd4a63SDavid du Colombier {
21*8ccd4a63SDavid du Colombier smblogprintif(smbglobals.log.fids, "smbfileclose: 0x%.4ux/0x%.4ux %s%s\n",
22*8ccd4a63SDavid du Colombier f->t->id, f->id, f->t->serv->path, f->name);
23*8ccd4a63SDavid du Colombier smbidmapremove(s->fidmap, f);
24*8ccd4a63SDavid du Colombier smbfilefree(&f);
25*8ccd4a63SDavid du Colombier }
26