force OREAD mode when creating directories. this allows creating directories on windows 7 explorer. ignore the smblock changes... its really just the p9mode = OREAD; line. Reference: /n/sources/patch/applied/aquarela-mkdir-mode Date: Mon Aug 23 11:12:46 CES 2010 Signed-off-by: cinap_lenrek@gmx.de --- /sys/src/cmd/aquarela/smbcomopen.c Mon Aug 23 11:10:59 2010 +++ /sys/src/cmd/aquarela/smbcomopen.c Mon Aug 23 11:10:55 2010 @@ -101,6 +101,7 @@ else if (createoptions & SMB_CO_DIRECTORY) { attr &= ~SMB_ATTR_NORMAL; attr |= SMB_ATTR_DIRECTORY; + p9mode = OREAD; } //smblogprint(-1, "creating: before conversion attr 0x%.4ux\n", attr); p9attr = smbdosattr2plan9mode(attr); @@ -193,7 +194,6 @@ goto done; } - smbloglock(); smblogprint(h->command, "flags 0x%.4ux", flags); if (flags & SMB_OPEN_FLAGS_ADDITIONAL) smblogprint(h->command, " additional"); @@ -264,7 +264,6 @@ smblogprint(h->command, "createsize 0x%.8lux\n", createsize); smblogprint(h->command, "timeout 0x%.8lux\n", timeout); smblogprint(h->command, "path %s\n", path); - smblogunlock(); t = smbidmapfind(s->tidmap, h->tid); if (t == nil) { @@ -395,13 +394,11 @@ goto done; } - smbloglock(); smblogprint(h->command, "path %s\n", path); smblogprint(h->command, "attr 0x%.4ux", attr); smblogprintattr(h->command, attr); smblogprint(h->command, "\n"); smblogprint(h->command, "createtime 0x%.8lux\n", createtime); - smblogunlock(); t = smbidmapfind(s->tidmap, h->tid); if (t == nil) {