summaryrefslogtreecommitdiff
path: root/source4/dsdb/kcc
diff options
context:
space:
mode:
authorMatthieu Patou <mat@matws.net>2012-09-27 01:27:50 -0700
committerMatthieu Patou <mat@matws.net>2012-10-07 21:51:02 -0700
commit97f0b8d9c964fd67bd652eaa41a883305876710f (patch)
tree834063f88170886f5ad7de5292f01ec248be35eb /source4/dsdb/kcc
parent03c4dceaab82ca2c60c9ce0e09fddd071f98087b (diff)
downloadsamba-97f0b8d9c964fd67bd652eaa41a883305876710f.tar.gz
samba-97f0b8d9c964fd67bd652eaa41a883305876710f.tar.bz2
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.c22
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 8075242eb0..0b6b82ad56 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",