smbfile.c 438 B

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