• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.5.8/xnu-1228.15.4/bsd/vfs/

Lines Matching defs:ainfop

1263 static int  get_xattrinfo(vnode_t xvp, int setting, attr_info_t *ainfop, vfs_context_t context);
1265 static void rel_xattrinfo(attr_info_t *ainfop);
1267 static int write_xattrinfo(attr_info_t *ainfop);
1285 static int check_and_swap_attrhdr(attr_header_t *ah, attr_info_t* ainfop);
1303 static int check_and_swap_apple_double_header(attr_info_t *ainfop)
1311 rawsize = ainfop->rawsize;
1312 header = (apple_double_header_t *) ainfop->rawdata;
1356 entry_end > ainfop->filesize) {
2455 * attribute header and entries if any. Populates the fields of ainfop
2473 get_xattrinfo(vnode_t xvp, int setting, attr_info_t *ainfop, vfs_context_t context)
2483 bzero(ainfop, sizeof(attr_info_t));
2484 ainfop->filevp = xvp;
2485 ainfop->context = context;
2492 ainfop->filesize = va.va_data_size;
2498 iosize = MIN(ATTR_MAX_HDR_SIZE, ainfop->filesize);
2504 ainfop->iosize = iosize;
2519 ainfop->rawsize = iosize - uio_resid(auio);
2520 ainfop->rawdata = (u_int8_t *)buffer;
2524 error = check_and_swap_apple_double_header(ainfop);
2528 ainfop->filehdr = filehdr; /* valid AppleDouble header */
2538 ainfop->finderinfo = &filehdr->entries[i];
2551 if (ainfop->finderinfo->offset + FINDERINFOSIZE <= ainfop->rawsize &&
2552 bcmp((u_int8_t*)ainfop->filehdr + ainfop->finderinfo->offset, emptyfinfo, sizeof(emptyfinfo)) == 0) {
2553 ainfop->emptyfinderinfo = 1;
2589 ainfop->rsrcfork = &filehdr->entries[i];
2592 ainfop->readonly = 1;
2610 ainfop->finderinfo == &filehdr->entries[0] &&
2611 ainfop->rsrcfork == &filehdr->entries[1] &&
2612 ainfop->finderinfo->offset == offsetof(apple_double_header_t, finfo)) {
2620 if (setting && ainfop->finderinfo->length == FINDERINFOSIZE) {
2625 if (ainfop->rsrcfork && filehdr->entries[1].length) {
2670 swap_attrhdr(attrhdr, ainfop); /* to big endian */
2687 * Sets ainfop->attrhdr and ainfop->attr_entry if a valid
2690 if (ainfop->finderinfo &&
2691 ainfop->finderinfo == &filehdr->entries[0] &&
2692 ainfop->finderinfo->length >= (sizeof(attr_header_t) - sizeof(apple_double_header_t))) {
2695 if ((error = check_and_swap_attrhdr(attrhdr, ainfop)) == 0) {
2696 ainfop->attrhdr = attrhdr; /* valid attribute header */
2698 ainfop->attr_entry = (attr_entry_t *)&attrhdr[1];
2778 rel_xattrinfo(attr_info_t *ainfop)
2780 FREE(ainfop->filehdr, M_TEMP);
2781 bzero(ainfop, sizeof(attr_info_t));
2785 write_xattrinfo(attr_info_t *ainfop)
2791 uio_addiov(auio, (uintptr_t)ainfop->filehdr, ainfop->iosize);
2793 swap_adhdr(ainfop->filehdr);
2794 if (ainfop->attrhdr != NULL) {
2795 swap_attrhdr(ainfop->attrhdr, ainfop);
2798 error = VNOP_WRITE(ainfop->filevp, auio, 0, ainfop->context);
2800 swap_adhdr(ainfop->filehdr);
2801 if (ainfop->attrhdr != NULL) {
2802 swap_attrhdr(ainfop->attrhdr, ainfop);
2870 check_and_swap_attrhdr(attr_header_t *ah, attr_info_t *ainfop)
2898 if (ah->total_size > ainfop->finderinfo->offset + ainfop->finderinfo->length ||
2907 buf_end = ainfop->rawdata + ah->total_size;