if (ahide != bhide) {
code = pr_SetFieldsEntry
(-agid, PR_SF_ALLBITS,
- (ahide ? PRP_STATUS_MEM : PRP_GROUP_DEFAULT) >> PRIVATE_SHIFT,
+ (ahide ? PRP_STATUS_ANY : PRP_GROUP_DEFAULT) >> PRIVATE_SHIFT,
0 /*ngroups*/, 0 /*nusers*/);
if (code) {
critical_alert("incremental",
if (ahide) {
code = pr_SetFieldsEntry
(-agid, PR_SF_ALLBITS,
- (ahide ? PRP_STATUS_MEM : PRP_GROUP_DEFAULT) >> PRIVATE_SHIFT,
+ (ahide ? PRP_STATUS_ANY : PRP_GROUP_DEFAULT) >> PRIVATE_SHIFT,
0 /*ngroups*/, 0 /*nusers*/);
if (code) {
critical_alert("incremental",
if (afterc)
edit_group(1, after[LM_LIST], after[LM_TYPE], after[LM_MEMBER]);
if (beforec)
- edit_group(0, after[LM_LIST], after[LM_TYPE], after[LM_MEMBER]);
+ edit_group(0, before[LM_LIST], before[LM_TYPE], before[LM_MEMBER]);
}
sleep(1); /* give the ptserver room */
edit_group(1, group, av[0], av[1]);
} else {
- code = mr_query("get_members_of_list", 1, &av[1], get_members, group);
+ code = mr_query("get_end_members_of_list", 1, &av[1],
+ get_members, group);
if (code)
critical_alert("incremental",
"Couldn't retrieve full membership of %s: %s",
* LABEL change: rename/remount
* Deletion: rename/unmount
*/
+ if (afterc < FS_CREATE) {
+ if (!strcmp(before[FS_TYPE], "AFS"))
+ critical_alert("incremental",
+ "Could not delete AFS filesystem %s: Operation not supported\n",
+ before[FS_NAME]);
+ return;
+ }
+
+ if (!strcmp(after[FS_TYPE], "AFS")) {
+ if (strcmp(before[FS_TYPE], "AFS")) {
+ critical_alert("incremental",
+ "Cannot convert %s to an AFS filesystem: Operation not supported\n",
+ after[FS_NAME]);
+ } else {
+ critical_alert("incremental",
+ "Cannot change attributes of AFS filesystem %s: Operation not supported\n",
+ after[FS_NAME]);
+ }
+ return;
+ }
}