+ char *f = strrchr(fname,'/');
+
+ if (strlen(fname)+9 > MAXPATHLEN) {
+ rprintf(FERROR,"filename too long\n");
+ if (buf) unmap_file(buf);
+ close(fd1);
+ continue;
+ }
+
+ if (f) {
+ *f = 0;
+ slprintf(fnametmp,sizeof(fnametmp)-1,"%s/.%s.XXXXXX",fname,f+1);
+ *f = '/';
+ } else {
+ slprintf(fnametmp,sizeof(fnametmp)-1,".%s.XXXXXX",fname);
+ }