Blame SOURCES/openchange-2.3-samba-4.12.patch

6859d4
diff -up openchange-openchange-2.3-VULCAN/ndr_mapi.c.samba-4.12 openchange-openchange-2.3-VULCAN/ndr_mapi.c
6859d4
--- openchange-openchange-2.3-VULCAN/ndr_mapi.c.samba-4.12	2020-01-27 11:04:07.136870938 +0100
6859d4
+++ openchange-openchange-2.3-VULCAN/ndr_mapi.c	2020-01-27 11:12:29.978863985 +0100
6859d4
@@ -2151,7 +2151,11 @@ enum ndr_err_code ndr_push_RestrictionVa
6859d4
 		uint32_t _flags_save_STRUCT = ndr->flags;
6859d4
 		ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
6859d4
 		if (ndr_flags & NDR_SCALARS) {
6859d4
-			int level = ndr_push_get_switch_value(ndr, r);
6859d4
+			uint32_t level = 0;
6859d4
+
6859d4
+			if (!NDR_ERR_CODE_IS_SUCCESS(ndr_push_steal_switch_value(ndr, r, &level)))
6859d4
+				level = 0;
6859d4
+
6859d4
 			switch (level) {
6859d4
 				case 0x0: {
6859d4
 					break; }
6859d4
@@ -2165,7 +2169,9 @@ enum ndr_err_code ndr_push_RestrictionVa
6859d4
 			}
6859d4
 		}
6859d4
 		if (ndr_flags & NDR_BUFFERS) {
6859d4
-			int level = ndr_push_get_switch_value(ndr, r);
6859d4
+			uint32_t level;
6859d4
+			if (!NDR_ERR_CODE_IS_SUCCESS(ndr_push_steal_switch_value(ndr, r, &level)))
6859d4
+				level = 0;
6859d4
 			switch (level) {
6859d4
 				case 0x0:
6859d4
 				break;
6859d4
@@ -2187,9 +2193,10 @@ enum ndr_err_code ndr_push_RestrictionVa
6859d4
 
6859d4
 enum ndr_err_code  ndr_pull_RestrictionVariable(struct ndr_pull *ndr, int ndr_flags, union RestrictionVariable *r)
6859d4
 {
6859d4
-	int level;
6859d4
+	uint32_t level;
6859d4
 	TALLOC_CTX *_mem_save_res_0;
6859d4
-	level = ndr_pull_get_switch_value(ndr, r);
6859d4
+	if (!NDR_ERR_CODE_IS_SUCCESS(ndr_pull_steal_switch_value(ndr, r, &level)))
6859d4
+		level = 0;
6859d4
 	{
6859d4
 		uint32_t _flags_save_STRUCT = ndr->flags;
6859d4
 		ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
6859d4
@@ -2237,8 +2244,8 @@ enum ndr_err_code  ndr_pull_RestrictionV
6859d4
 
6859d4
 _PUBLIC_ void ndr_print_RestrictionVariable(struct ndr_print *ndr, const char *name, const union RestrictionVariable *r)
6859d4
 {
6859d4
-	int level;
6859d4
-	level = ndr_print_get_switch_value(ndr, r);
6859d4
+	uint32_t level;
6859d4
+	level = ndr_print_steal_switch_value(ndr, r);
6859d4
 	ndr_print_union(ndr, name, level, "RestrictionVariable");
6859d4
 	switch (level) {
6859d4
 		case 0x0: