# this option gets set, certain file names
# become illegal. these are .Parent and
# anything that starts with .Apple. also, dot
-# files created on the unix side are marked
-# invisible.
+# files created on the unix side are marked invisible.
# limitsize -> limit disk size reporting to 2GB. this is
# here for older macintoshes using newer
# appleshare clients. yucko.
/*
- * $Id: file.c,v 1.103 2006-09-29 09:39:16 didg Exp $
+ * $Id: file.c,v 1.104 2006-09-29 09:44:58 didg Exp $
*
* Copyright (c) 1990,1993 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
openf = O_RDWR|O_CREAT|O_EXCL;
}
- if ( ad_open( upath, vol_noadouble(vol)|ADFLAGS_DF|ADFLAGS_HF|ADFLAGS_NOHF,
+ if ( ad_open( upath, vol_noadouble(vol)|ADFLAGS_DF|ADFLAGS_HF|ADFLAGS_NOHF|ADFLAGS_CREATE,
openf, 0666, adp) < 0 ) {
switch ( errno ) {
case EROFS:
/*
- * $Id: adouble.h,v 1.31 2006-09-29 09:39:16 didg Exp $
+ * $Id: adouble.h,v 1.32 2006-09-29 09:44:59 didg Exp $
* Copyright (c) 1990,1991 Regents of The University of Michigan.
* All Rights Reserved.
*
#define ADFLAGS_OPENFORKS (1<<7) /* check for open fork in ad_metadata function */
#define ADFLAGS_RF (1<<8)
#define ADFLAGS_MD ADFLAGS_HF /* (1<<9) */
+#define ADFLAGS_CREATE (1<<9)
/* adouble v2 cnid cache */
#define ADVOL_NODEV (1 << 0)
/*
- * $Id: ad_open.c,v 1.37 2006-09-29 09:39:16 didg Exp $
+ * $Id: ad_open.c,v 1.38 2006-09-29 09:44:59 didg Exp $
*
* Copyright (c) 1999 Adrian Sun (asun@u.washington.edu)
* Copyright (c) 1990,1991 Regents of The University of Michigan.
}
/* make things invisible */
- if ((ad->ad_options & ADVOL_INVDOTS) && (*path == '.') && strcmp(path, ".") && strcmp(path, "..")) {
+ if ((ad->ad_options & ADVOL_INVDOTS) && !(adflags & ADFLAGS_CREATE) &&
+ (*path == '.') && strcmp(path, ".") && strcmp(path, ".."))
+ {
ashort = htons(ATTRBIT_INVISIBLE);
ad_setattr(ad, ashort);
ashort = htons(FINDERINFO_INVISIBLE);