int osx_attr_fgetattrlist
(int fd, struct attrlist * attrList, void * attrBuf,
 size_t attrBufSize, unsigned long options)
{
  int r;
  caml_release_runtime_system();
  r = fgetattrlist(fd, attrList, attrBuf, attrBufSize, options);
  caml_acquire_runtime_system();
  return r;
}
Exemple #2
0
static void
clear_type_and_creator(int fd)
{
	struct attrlist alist;
	struct {
		u_int32_t length;
		char info[32];
	} abuf;

	memset(&alist, 0, sizeof(alist));
	alist.bitmapcount = ATTR_BIT_MAP_COUNT;
	alist.commonattr = ATTR_CMN_FNDRINFO;

	if (!fgetattrlist(fd, &alist, &abuf, sizeof(abuf), 0) && abuf.length == sizeof(abuf)) {
		memset(abuf.info, 0, 8);
		fsetattrlist(fd, &alist, abuf.info, sizeof(abuf.info), 0);
	}
}