This is the third official posting of this patchset. The main change since the last set is that the sid_to_id and id_to_sid calls have been changed to allow the mapping of multiple SIDs or IDs at once. The existing tools only need to map one at a time, but this anticipates the eventual need to map multiple IDs efficiently if and when RichACL support is merged into the kernel. Also with this redesign, we can now handle IDMAP_BOTH properly as Metze suggested. The plugin API now passes back a type and the caller can decide how to handle the result. Note that while working on this last iteration, it's become clear to me that the ACL handling code in the kernel is mis-designed in how it handles ownership. It's possible for files to be owned by groups under windows, and in that case the primary group owner may not be filled out. The kernel does not account for this possibility. Fixing that will take a fundamental redesign, probably including a new upcall. I think this patchset represents the best we can do short of that. Jeff Layton (6): cifs-utils: struct cifs_sid definition to new cifsidmap.h header cifs-utils: new plugin architecture for ID mapping code cifs-utils: convert setcifsacl to use the plugin interface cifs-utils: add autoconf test for WBC_ID_TYPE_BOTH cifs-utils: convert cifs.idmap to use plugin interface cifs-utils: add a manpage for idmapwb Makefile.am | 45 +++++++-- aclocal/idmap.m4 | 15 +++ cifs.idmap.8.in | 22 ++-- cifs.idmap.c | 161 ++++++++++++++--------------- cifsacl.h | 12 +-- cifsidmap.h | 168 +++++++++++++++++++++++++++++++ configure.ac | 13 +++ getcifsacl.1 | 58 ----------- getcifsacl.1.in | 59 +++++++++++ getcifsacl.c | 98 ++++++++---------- idmap_plugin.c | 150 +++++++++++++++++++++++++++ idmap_plugin.h | 57 +++++++++++ idmapwb.8.in | 148 +++++++++++++++++++++++++++ idmapwb.c | 301 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ idmapwb.pod | 26 +++++ setcifsacl.1 | 111 -------------------- setcifsacl.1.in | 113 +++++++++++++++++++++ setcifsacl.c | 70 +++---------- 18 files changed, 1231 insertions(+), 396 deletions(-) create mode 100644 cifsidmap.h delete mode 100644 getcifsacl.1 create mode 100644 getcifsacl.1.in create mode 100644 idmap_plugin.c create mode 100644 idmap_plugin.h create mode 100644 idmapwb.8.in create mode 100644 idmapwb.c create mode 100644 idmapwb.pod delete mode 100644 setcifsacl.1 create mode 100644 setcifsacl.1.in -- 1.7.11.7 -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html