Lines Matching defs:dstr
302 aclent_type_txt(dynaclstr_t *dstr, aclent_t *aclp, int flags)
311 error = str_append(dstr, "user::");
313 error = str_append(dstr, "defaultuser::");
319 error = str_append(dstr, "user:");
321 error = str_append(dstr, "defaultuser:");
324 error = str_append(dstr, pruname(aclp->a_id, idp,
327 error = str_append(dstr, ":");
333 error = str_append(dstr, "group::");
335 error = str_append(dstr, "defaultgroup::");
341 error = str_append(dstr, "group:");
343 error = str_append(dstr, "defaultgroup:");
346 error = str_append(dstr, prgname(aclp->a_id, idp,
349 error = str_append(dstr, ":");
355 error = str_append(dstr, "mask:");
357 error = str_append(dstr, "defaultmask:");
363 error = str_append(dstr, "other:");
365 error = str_append(dstr, "defaultother:");
452 ace_perm_txt(dynaclstr_t *dstr, uint32_t mask,
518 error = str_append(dstr, buf);
528 error = str_append(dstr,
532 str_append(dstr, READ_DIR_TXT);
538 str_append(dstr, WRITE_DATA_TXT);
541 str_append(dstr, ADD_FILE_TXT);
546 error = str_append(dstr,
549 error = str_append(dstr,
555 error = str_append(dstr, READ_DATA_TXT);
558 error = str_append(dstr, WRITE_DATA_TXT);
561 error = str_append(dstr, APPEND_DATA_TXT);
565 error = str_append(dstr, READ_XATTR_TXT);
568 error = str_append(dstr, WRITE_XATTR_TXT);
571 error = str_append(dstr, EXECUTE_TXT);
574 error = str_append(dstr, DELETE_CHILD_TXT);
577 error = str_append(dstr, READ_ATTRIBUTES_TXT);
580 error = str_append(dstr, WRITE_ATTRIBUTES_TXT);
583 error = str_append(dstr, DELETE_TXT);
586 error = str_append(dstr, READ_ACL_TXT);
589 error = str_append(dstr, WRITE_ACL_TXT);
592 error = str_append(dstr, WRITE_OWNER_TXT);
595 error = str_append(dstr, SYNCHRONIZE_TXT);
597 if (error == 0 && dstr->d_aclexport[dstr->d_pos-1] == '/') {
598 dstr->d_aclexport[--dstr->d_pos] = '\0';
601 error = str_append(dstr, ":");
610 ace_access_txt(dynaclstr_t *dstr, int type)
615 error = str_append(dstr, ALLOW_TXT);
617 error = str_append(dstr, DENY_TXT);
619 error = str_append(dstr, AUDIT_TXT);
621 error = str_append(dstr, ALARM_TXT);
623 error = str_append(dstr, UNKNOWN_TXT);
629 ace_inherit_txt(dynaclstr_t *dstr, uint32_t iflags, int flags)
666 error = str_append(dstr, buf);
669 error = str_append(dstr, FILE_INHERIT_TXT);
672 error = str_append(dstr, DIR_INHERIT_TXT);
675 error = str_append(dstr, NO_PROPAGATE_TXT);
678 error = str_append(dstr, INHERIT_ONLY_TXT);
681 error = str_append(dstr, SUCCESSFUL_ACCESS_TXT);
684 error = str_append(dstr, FAILED_ACCESS_TXT);
687 error = str_append(dstr, INHERITED_ACE_TXT);
689 if (error == 0 && dstr->d_aclexport[dstr->d_pos-1] == '/') {
690 dstr->d_aclexport[--dstr->d_pos] = '\0';
691 error = str_append(dstr, ":");
732 dynaclstr_t *dstr;
739 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
741 dstr->d_bufsize = aclcnt * ACL_ENTRY_SIZE;
742 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
743 free(dstr);
746 *dstr->d_aclexport = '\0';
747 dstr->d_pos = 0;
750 if (error = aclent_type_txt(dstr, aclp, flags))
752 if (error = aclent_perm_txt(dstr, aclp->a_perm))
760 if (error = str_append(dstr, ":"))
764 if (error = str_append(dstr, idstr))
768 if (error = str_append(dstr, ","))
772 if (dstr->d_aclexport)
773 free(dstr->d_aclexport);
775 aclexport = dstr->d_aclexport;
777 free(dstr);
814 str_append(dynaclstr_t *dstr, char *newstr)
818 if ((len + dstr->d_pos) >= dstr->d_bufsize) {
819 dstr->d_aclexport = realloc(dstr->d_aclexport,
820 dstr->d_bufsize + len + 1);
821 if (dstr->d_aclexport == NULL)
823 dstr->d_bufsize += len;
825 (void) strcat(&dstr->d_aclexport[dstr->d_pos], newstr);
826 dstr->d_pos += len;
831 aclent_perm_txt(dynaclstr_t *dstr, o_mode_t perm)
848 return (str_append(dstr, buf));
887 dynaclstr_t *dstr;
894 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
896 dstr->d_bufsize = aclcnt * ACL_ENTRY_SIZE;
897 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
898 free(dstr);
901 *dstr->d_aclexport = '\0';
902 dstr->d_pos = 0;
906 if (error = ace_type_txt(dstr, aclp, flags))
908 if (error = ace_perm_txt(dstr, aclp->a_access_mask,
911 if (error = ace_inherit_txt(dstr, aclp->a_flags, flags))
913 if (error = ace_access_txt(dstr, aclp->a_type))
922 if (error = str_append(dstr, ":"))
943 if (error = str_append(dstr, idstr))
951 if (error = str_append(dstr, ","))
959 if (dstr->d_aclexport)
960 free(dstr->d_aclexport);
962 aclexport = dstr->d_aclexport;
964 free(dstr);
1035 dynaclstr_t *dstr;
1038 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
1040 dstr->d_bufsize = ACE_ENTRY_SIZE;
1041 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
1042 free(dstr);
1045 *dstr->d_aclexport = '\0';
1047 dstr->d_pos = 0;
1050 dstr->d_aclexport[0] = '\0';
1051 dstr->d_pos = 0;
1053 if (ace_type_txt(dstr, acep, 0))
1055 len = strlen(&dstr->d_aclexport[0]);
1056 if (ace_perm_txt(dstr, acep->a_access_mask, acep->a_flags,
1059 if (ace_inherit_txt(dstr, acep->a_flags, ACL_COMPACT_FMT))
1061 if (ace_access_txt(dstr, acep->a_type) == -1)
1063 (void) printf(" %20.*s%s\n", len, dstr->d_aclexport,
1064 &dstr->d_aclexport[len]);
1067 if (dstr->d_aclexport)
1068 free(dstr->d_aclexport);
1069 free(dstr);