]> git.pld-linux.org Git - packages/openchange.git/blob - samba-4.12.patch
- fix building with samba 4.12
[packages/openchange.git] / samba-4.12.patch
1 diff -up openchange-openchange-2.3-VULCAN/libmapiadmin/libmapiadmin.h.samba-4.12 openchange-openchange-2.3-VULCAN/libmapiadmin/libmapiadmin.h
2 --- openchange-openchange-2.3-VULCAN/libmapiadmin/libmapiadmin.h.samba-4.12     2020-01-27 11:33:02.941846935 +0100
3 +++ openchange-openchange-2.3-VULCAN/libmapiadmin/libmapiadmin.h        2020-01-27 11:33:19.170846710 +0100
4 @@ -103,7 +103,9 @@ __BEGIN_DECLS
5  struct ldb_dn *samdb_search_dn(struct ldb_context *, TALLOC_CTX *, struct ldb_dn *, const char *, ...) _PRINTF_ATTRIBUTE(4,5);
6  struct dom_sid *dom_sid_add_rid(TALLOC_CTX *, const struct dom_sid *, uint32_t);
7  bool encode_pw_buffer(uint8_t buffer[516], const char *, int);
8 +#if 0 /* removed in samba 4.12 */
9  void arcfour_crypt_blob(uint8_t *, int, const DATA_BLOB *);
10 +#endif
11  
12  /* The following public definitions come from libmapiadmin/mapiadmin.c */
13  struct mapiadmin_ctx *mapiadmin_init(struct mapi_session *);
14 diff -up openchange-openchange-2.3-VULCAN/libmapiadmin/mapiadmin_user.c.samba-4.12 openchange-openchange-2.3-VULCAN/libmapiadmin/mapiadmin_user.c
15 --- openchange-openchange-2.3-VULCAN/libmapiadmin/mapiadmin_user.c.samba-4.12   2020-01-27 11:25:31.398853179 +0100
16 +++ openchange-openchange-2.3-VULCAN/libmapiadmin/mapiadmin_user.c      2020-01-27 11:31:27.490848255 +0100
17 @@ -592,6 +592,9 @@ _PUBLIC_ enum MAPISTATUS mapiadmin_user_
18   */
19  _PUBLIC_ enum MAPISTATUS mapiadmin_user_add(struct mapiadmin_ctx *mapiadmin_ctx)
20  {
21 +       OC_DEBUG(3, "mapiadmin_user_add(): is disabled");
22 +       return MAPI_E_UNABLE_TO_COMPLETE;
23 +#if 0 /* disable it, use samba function directly, if needed (no 'arcfour_crypt_blob' in samba 4.12) */
24         TALLOC_CTX                      *mem_ctx;
25         NTSTATUS                        status;
26         enum MAPISTATUS                 retval;
27 @@ -732,6 +735,7 @@ again:
28  
29         talloc_free(mem_ctx);
30         return MAPI_E_SUCCESS;
31 +#endif
32  }
33  
34  /**
35 diff -up openchange-openchange-2.3-VULCAN/ndr_mapi.c.samba-4.12 openchange-openchange-2.3-VULCAN/ndr_mapi.c
36 --- openchange-openchange-2.3-VULCAN/ndr_mapi.c.samba-4.12      2020-01-27 11:04:07.136870938 +0100
37 +++ openchange-openchange-2.3-VULCAN/ndr_mapi.c 2020-01-27 11:12:29.978863985 +0100
38 @@ -2151,7 +2151,11 @@ enum ndr_err_code ndr_push_RestrictionVa
39                 uint32_t _flags_save_STRUCT = ndr->flags;
40                 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
41                 if (ndr_flags & NDR_SCALARS) {
42 -                       int level = ndr_push_get_switch_value(ndr, r);
43 +                       uint32_t level = 0;
44 +
45 +                       if (!NDR_ERR_CODE_IS_SUCCESS(ndr_push_steal_switch_value(ndr, r, &level)))
46 +                               level = 0;
47 +
48                         switch (level) {
49                                 case 0x0: {
50                                         break; }
51 @@ -2165,7 +2169,9 @@ enum ndr_err_code ndr_push_RestrictionVa
52                         }
53                 }
54                 if (ndr_flags & NDR_BUFFERS) {
55 -                       int level = ndr_push_get_switch_value(ndr, r);
56 +                       uint32_t level;
57 +                       if (!NDR_ERR_CODE_IS_SUCCESS(ndr_push_steal_switch_value(ndr, r, &level)))
58 +                               level = 0;
59                         switch (level) {
60                                 case 0x0:
61                                 break;
62 @@ -2187,9 +2193,10 @@ enum ndr_err_code ndr_push_RestrictionVa
63  
64  enum ndr_err_code  ndr_pull_RestrictionVariable(struct ndr_pull *ndr, int ndr_flags, union RestrictionVariable *r)
65  {
66 -       int level;
67 +       uint32_t level;
68         TALLOC_CTX *_mem_save_res_0;
69 -       level = ndr_pull_get_switch_value(ndr, r);
70 +       if (!NDR_ERR_CODE_IS_SUCCESS(ndr_pull_steal_switch_value(ndr, r, &level)))
71 +               level = 0;
72         {
73                 uint32_t _flags_save_STRUCT = ndr->flags;
74                 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
75 @@ -2237,8 +2244,8 @@ enum ndr_err_code  ndr_pull_RestrictionV
76  
77  _PUBLIC_ void ndr_print_RestrictionVariable(struct ndr_print *ndr, const char *name, const union RestrictionVariable *r)
78  {
79 -       int level;
80 -       level = ndr_print_get_switch_value(ndr, r);
81 +       uint32_t level;
82 +       level = ndr_print_steal_switch_value(ndr, r);
83         ndr_print_union(ndr, name, level, "RestrictionVariable");
84         switch (level) {
85                 case 0x0:
This page took 0.036717 seconds and 3 git commands to generate.