diff options
author | Matthieu Patou <mat@matws.net> | 2012-09-27 01:27:50 -0700 |
---|---|---|
committer | Matthieu Patou <mat@matws.net> | 2012-10-07 21:51:02 -0700 |
commit | 97f0b8d9c964fd67bd652eaa41a883305876710f (patch) | |
tree | 834063f88170886f5ad7de5292f01ec248be35eb /source4/dsdb/kcc | |
parent | 03c4dceaab82ca2c60c9ce0e09fddd071f98087b (diff) | |
download | samba-97f0b8d9c964fd67bd652eaa41a883305876710f.tar.gz samba-97f0b8d9c964fd67bd652eaa41a883305876710f.tar.xz samba-97f0b8d9c964fd67bd652eaa41a883305876710f.zip |
drs-replica-info: level_not_supported is wrong when we do support (partialy the level)
Diffstat (limited to 'source4/dsdb/kcc')
-rw-r--r-- | source4/dsdb/kcc/kcc_drs_replica_info.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/source4/dsdb/kcc/kcc_drs_replica_info.c b/source4/dsdb/kcc/kcc_drs_replica_info.c index 8075242eb0e..0b6b82ad563 100644 --- a/source4/dsdb/kcc/kcc_drs_replica_info.c +++ b/source4/dsdb/kcc/kcc_drs_replica_info.c @@ -862,35 +862,39 @@ NTSTATUS kccdrs_replica_get_info(struct irpc_message *msg, ldb_dn_new(mem_ctx, samdb, object_dn_str)); break; case DRSUAPI_DS_REPLICA_INFO_CURSORS3: /* On MS-DRSR it is DS_REPL_INFO_CURSORS_3_FOR_NC */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1: /* On MS-DRSR it is DS_REPL_INFO_UPTODATE_VECTOR_V1 */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA: /* On MS-DRSR it is DS_REPL_INFO_METADATA_FOR_OBJ */ - status = WERR_INVALID_LEVEL; + /* + * It should be too complicated to filter the metadata2 to remove the additional data + * as metadata2 is a superset of metadata + */ + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2: /* On MS-DRSR it is DS_REPL_INFO_METADATA_FOR_OBJ */ status = kccdrs_replica_get_info_obj_metadata2(mem_ctx, samdb, req, reply, ldb_dn_new(mem_ctx, samdb, object_dn_str), base_index); break; case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA: /* On MS-DRSR it is DS_REPL_INFO_METADATA_FOR_ATTR_VALUE */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2: /* On MS-DRSR it is DS_REPL_INFO_METADATA_2_FOR_ATTR_VALUE */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES: /* On MS-DRSR it is DS_REPL_INFO_KCC_DSA_CONNECT_FAILURES */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES: /* On MS-DRSR it is DS_REPL_INFO_KCC_LINK_FAILURES */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS: /* On MS-DRSR it is DS_REPL_INFO_CLIENT_CONTEXTS */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; case DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS: /* On MS-DRSR it is DS_REPL_INFO_SERVER_OUTGOING_CALLS */ - status = WERR_INVALID_LEVEL; + status = WERR_NOT_SUPPORTED; break; default: DEBUG(1,(__location__ ": Unsupported DsReplicaGetInfo info_type %u\n", |