]> git.pld-linux.org Git - packages/openchange.git/blame - openchange-covscan.patch
- release 42 (for samba 4.10.8)
[packages/openchange.git] / openchange-covscan.patch
CommitLineData
f28b8ba4
JB
1diff -up openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_property.c.covscan openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_property.c
2--- openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_property.c.covscan 2018-07-19 13:53:41.281450703 +0200
3+++ openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_property.c 2018-07-19 13:53:41.285450703 +0200
4@@ -53,6 +53,7 @@ static void openchange_all_string_sub(ch
5 }
6 }
7
8+#if 0
9 struct RRULE_byday {
10 uint16_t DayOfWeek;
11 const char *DayName;
12@@ -68,6 +69,7 @@ static const struct RRULE_byday RRULE_by
13 { 0x0006, "SA" },
14 { 0x0007, NULL }
15 };
16+#endif
17
18 static const char *get_filename(const char *filename)
19 {
20diff -up openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_utils.c.covscan openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_utils.c
21--- openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_utils.c.covscan 2018-07-19 13:53:41.281450703 +0200
22+++ openchange-openchange-2.3-VULCAN/libexchange2ical/exchange2ical_utils.c 2018-07-19 13:53:41.285450703 +0200
23@@ -232,7 +232,7 @@ uint32_t get_exchange_rdfDays_from_ical(
24
25 struct icaltimetype get_icaltimetype_from_tm(struct tm *tm)
26 {
27- struct icaltimetype tt;
28+ struct icaltimetype tt = icaltime_null_time ();
29
30 tt.year = tm->tm_year+1900;
31 tt.month = tm->tm_mon+1;
32@@ -259,7 +259,7 @@ struct icaltimetype get_icaltimetype_fro
33
34 struct icaltimetype get_icaldate_from_tm(struct tm *tm)
35 {
36- struct icaltimetype tt;
37+ struct icaltimetype tt = icaltime_null_time ();
38
39 tt.year = tm->tm_year+1900;
40 tt.month = tm->tm_mon+1;
41@@ -267,6 +267,7 @@ struct icaltimetype get_icaldate_from_tm
42 tt.hour = 0;
43 tt.minute = 0;
44 tt.second = 0;
45+ tt.zone = NULL;
46
47 tt.is_date = 1;
48 tt.is_daylight = 0;
49@@ -292,7 +293,7 @@ struct tm *get_tm_from_FILETIME(const st
50
51 struct icaltimetype get_icaltime_from_FILETIME(const struct FILETIME *ft)
52 {
53- struct icaltimetype tt;
54+ struct icaltimetype tt = icaltime_null_time ();
55 NTTIME nttime;
56 struct timeval temp_timeval;
57 struct tm *tm;
58@@ -317,7 +318,7 @@ struct icaltimetype get_icaltime_from_FI
59
60 struct icaltimetype get_icaltime_from_FILETIME_UTC(const struct FILETIME *ft)
61 {
62- struct icaltimetype tt;
63+ struct icaltimetype tt = icaltime_null_time ();
64 NTTIME nttime;
65 struct timeval temp_timeval;
66 struct tm *tm;
67@@ -342,7 +343,7 @@ struct icaltimetype get_icaltime_from_FI
68
69 struct icaltimetype get_icaldate_from_FILETIME(const struct FILETIME *ft)
70 {
71- struct icaltimetype tt;
72+ struct icaltimetype tt = icaltime_null_time ();
73 NTTIME nttime;
74 struct timeval temp_timeval;
75 struct tm *tm;
76@@ -373,7 +374,7 @@ struct icaltimetype get_icaldate_from_FI
77
78 struct icaltimetype get_icaldate_from_GlobalObjectId(struct GlobalObjectId *GlobalObjectId)
79 {
80- struct icaltimetype tt;
81+ struct icaltimetype tt = icaltime_null_time ();
82 tt.year = GlobalObjectId->YH;
83 tt.year = tt.year <<8;
84 tt.year |= GlobalObjectId->YL;
85@@ -513,7 +514,10 @@ uint32_t get_minutes_from_icaltimetype(i
86 time_t time;
87 NTTIME nttime;
88 struct timeval t;
89-
90+
91+ if (icaltime_is_null_time(icaltime) || !icaltime_is_valid_time(icaltime))
92+ return 0;
93+
94 tm.tm_year = icaltime.year - 1900;
95 tm.tm_mon = icaltime.month - 1;
96 tm.tm_mday = icaltime.day;
97diff -up openchange-openchange-2.3-VULCAN/libexchange2ical/ical2exchange_property.c.covscan openchange-openchange-2.3-VULCAN/libexchange2ical/ical2exchange_property.c
98--- openchange-openchange-2.3-VULCAN/libexchange2ical/ical2exchange_property.c.covscan 2015-05-16 17:22:04.000000000 +0200
99+++ openchange-openchange-2.3-VULCAN/libexchange2ical/ical2exchange_property.c 2018-07-19 13:53:41.286450703 +0200
100@@ -147,7 +147,6 @@ void ical2exchange_property_CATEGORIES(s
101 struct StringArray_r *sArray;
102 char **stringArray = NULL;
103 char string[256];
104- char *value;
105 char *tok;
106 icalproperty *categoriesProp;
107 uint32_t i = 0;
108@@ -160,8 +159,10 @@ void ical2exchange_property_CATEGORIES(s
109 categoriesProp = icalcomponent_get_first_property(ical2exchange->categoriesEvent, ICAL_CATEGORIES_PROPERTY);
110 sArray->cValues = 0;
111 while(categoriesProp){
112-
113- value = strdup(icalproperty_get_categories(categoriesProp));
114+ const char *categories = icalproperty_get_categories(categoriesProp);
115+ char *value;
116+
117+ value = strdup(categories ? categories : "");
118 tok = strtok(value, ",");
119 while(tok){
120 if(!stringArray){
121@@ -185,6 +186,7 @@ void ical2exchange_property_CATEGORIES(s
122 }
123 categoriesProp = icalcomponent_get_next_property(ical2exchange->categoriesEvent, ICAL_CATEGORIES_PROPERTY);
124
125+ free(value);
126 }
127 sArray->lppszA= (const char **) stringArray;
128
129@@ -519,6 +521,7 @@ void ical2exchange_property_RRULE_EXDATE
130
131 ritr = icalrecur_iterator_new(irt,dtstart);
132 next=icalrecur_iterator_next(ritr);
133+ last = icaltime_null_time();
134
135 while (!icaltime_is_null_time(next)){
136 last = next;
137diff -up openchange-openchange-2.3-VULCAN/libmapi++/examples/foldertree.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/examples/foldertree.cpp
138--- openchange-openchange-2.3-VULCAN/libmapi++/examples/foldertree.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
139+++ openchange-openchange-2.3-VULCAN/libmapi++/examples/foldertree.cpp 2018-07-19 13:53:41.286450703 +0200
140@@ -65,12 +65,12 @@ int main ()
141 }
142
143 }
144- catch (libmapipp::mapi_exception e) // Catch any MAPI exceptions
145+ catch (libmapipp::mapi_exception &e) // Catch any MAPI exceptions
146 {
147 std::cout << "MAPI Exception in main: " << e.what()
148 << std::endl;
149 }
150- catch (std::runtime_error e) // Catch any other runtime exceptions
151+ catch (std::runtime_error &e) // Catch any other runtime exceptions
152 {
153 std::cout << "std::runtime_error exception in main: "
154 << e.what() << std::endl;
155diff -up openchange-openchange-2.3-VULCAN/libmapi++/examples/messages.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/examples/messages.cpp
156--- openchange-openchange-2.3-VULCAN/libmapi++/examples/messages.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
157+++ openchange-openchange-2.3-VULCAN/libmapi++/examples/messages.cpp 2018-07-19 13:53:41.286450703 +0200
158@@ -61,12 +61,12 @@ int main ()
159 }
160 }
161 }
162- catch (libmapipp::mapi_exception e) // Catch any MAPI exceptions
163+ catch (libmapipp::mapi_exception &e) // Catch any MAPI exceptions
164 {
165 std::cout << "MAPI Exception in main: " << e.what()
166 << std::endl;
167 }
168- catch (std::runtime_error e) // Catch any other runtime exceptions
169+ catch (std::runtime_error &e) // Catch any other runtime exceptions
170 {
171 std::cout << "std::runtime_error exception in main: "
172 << e.what() << std::endl;
173diff -up openchange-openchange-2.3-VULCAN/libmapi/FXICS.c.covscan openchange-openchange-2.3-VULCAN/libmapi/FXICS.c
174--- openchange-openchange-2.3-VULCAN/libmapi/FXICS.c.covscan 2015-05-16 17:22:04.000000000 +0200
175+++ openchange-openchange-2.3-VULCAN/libmapi/FXICS.c 2018-07-19 13:53:41.286450703 +0200
176@@ -800,6 +800,7 @@ _PUBLIC_ enum MAPISTATUS FXGetBuffer(map
177 if ((retval = mapi_object_get_logon_id(obj_source_context, &logon_id)) != MAPI_E_SUCCESS)
178 return retval;
179
180+ memset(&request, 0, sizeof(struct FastTransferSourceGetBuffer_req));
181 mem_ctx = talloc_named(session, 0, "FXGetBuffer");
182 size = 0;
183
184diff -up openchange-openchange-2.3-VULCAN/libmapi/idset.c.covscan openchange-openchange-2.3-VULCAN/libmapi/idset.c
185--- openchange-openchange-2.3-VULCAN/libmapi/idset.c.covscan 2015-05-16 17:22:04.000000000 +0200
186+++ openchange-openchange-2.3-VULCAN/libmapi/idset.c 2018-07-19 13:53:41.286450703 +0200
187@@ -383,6 +383,7 @@ _PUBLIC_ struct idset *IDSET_parse(TALLO
188 total_bytes += 16;
189 }
190
191+ byte_count = 0;
192 globset.length = buffer.length - 16;
193 globset.data = (uint8_t *) buffer.data + 16;
194 idset->ranges = GLOBSET_parse(idset, globset, &idset->range_count, &byte_count);
195@@ -1182,7 +1183,8 @@ _PUBLIC_ void RAWIDSET_push_eid(struct r
196 }
197 else {
198 glob_idset = RAWIDSET_make(rawidset->mem_ctx, true, rawidset->single);
199- last_glob_idset->next = glob_idset;
200+ if (last_glob_idset)
201+ last_glob_idset->next = glob_idset;
202 }
203 glob_idset->repl.id = eid_id;
204 }
205diff -up openchange-openchange-2.3-VULCAN/libmapi/IMAPIProp.c.covscan openchange-openchange-2.3-VULCAN/libmapi/IMAPIProp.c
206--- openchange-openchange-2.3-VULCAN/libmapi/IMAPIProp.c.covscan 2015-05-16 17:22:04.000000000 +0200
207+++ openchange-openchange-2.3-VULCAN/libmapi/IMAPIProp.c 2018-07-19 13:53:41.287450703 +0200
208@@ -1122,6 +1122,7 @@ _PUBLIC_ enum MAPISTATUS QueryNamedPrope
209 return retval;
210
211 /* Initialization */
212+ memset(&request, 0, sizeof(struct QueryNamedProperties_req));
213 mem_ctx = talloc_named(session, 0, "QueryNamesFromIDs");
214 size = 0;
215
216diff -up openchange-openchange-2.3-VULCAN/libmapi/IMAPISupport.c.covscan openchange-openchange-2.3-VULCAN/libmapi/IMAPISupport.c
217--- openchange-openchange-2.3-VULCAN/libmapi/IMAPISupport.c.covscan 2015-05-16 17:22:04.000000000 +0200
218+++ openchange-openchange-2.3-VULCAN/libmapi/IMAPISupport.c 2018-07-19 13:53:41.287450703 +0200
219@@ -101,6 +101,7 @@ _PUBLIC_ enum MAPISTATUS Subscribe(mapi_
220 if ((retval = mapi_object_get_logon_id(obj, &logon_id)) != MAPI_E_SUCCESS)
221 return retval;
222
223+ memset(&request, 0, sizeof(struct RegisterNotification_req));
224 mem_ctx = talloc_named(session, 0, "Subscribe");
225
226 /* Fill the Subscribe operation */
227diff -up openchange-openchange-2.3-VULCAN/libmapi/IMessage.c.covscan openchange-openchange-2.3-VULCAN/libmapi/IMessage.c
228--- openchange-openchange-2.3-VULCAN/libmapi/IMessage.c.covscan 2015-05-16 17:22:04.000000000 +0200
229+++ openchange-openchange-2.3-VULCAN/libmapi/IMessage.c 2018-07-19 13:53:41.287450703 +0200
230@@ -499,6 +499,8 @@ _PUBLIC_ enum MAPISTATUS SetRecipientTyp
231 enum MAPISTATUS retval;
232 struct SPropValue lpProp;
233
234+ memset(&lpProp, 0, sizeof(struct SPropValue));
235+
236 lpProp.ulPropTag = PR_RECIPIENT_TYPE;
237 lpProp.value.l = RecipClass;
238
239@@ -1648,6 +1650,7 @@ _PUBLIC_ enum MAPISTATUS OpenEmbeddedMes
240 if ((retval = mapi_object_get_logon_id(obj_attach, &logon_id)) != MAPI_E_SUCCESS)
241 return retval;
242
243+ memset(&lpProp, 0, sizeof(struct SPropValue));
244 mem_ctx = talloc_named(session, 0, "OpenEmbeddedMessage");
245
246 /* Fill the OpenEmbeddedMessage request */
247diff -up openchange-openchange-2.3-VULCAN/libmapi/IStoreFolder.c.covscan openchange-openchange-2.3-VULCAN/libmapi/IStoreFolder.c
248--- openchange-openchange-2.3-VULCAN/libmapi/IStoreFolder.c.covscan 2015-05-16 17:22:04.000000000 +0200
249+++ openchange-openchange-2.3-VULCAN/libmapi/IStoreFolder.c 2018-07-19 13:53:41.287450703 +0200
250@@ -93,6 +93,7 @@ _PUBLIC_ enum MAPISTATUS OpenMessage(map
251 if ((retval = mapi_object_get_logon_id(obj_store, &logon_id)) != MAPI_E_SUCCESS)
252 return retval;
253
254+ memset(&lpProp, 0, sizeof(struct SPropValue));
255 mem_ctx = talloc_named(session, 0, "OpenMessage");
256
257 /* Fill the OpenMessage operation */
258@@ -232,6 +233,7 @@ _PUBLIC_ enum MAPISTATUS ReloadCachedInf
259 if ((retval = mapi_object_get_logon_id(obj_message, &logon_id)) != MAPI_E_SUCCESS)
260 return retval;
261
262+ memset(&lpProp, 0, sizeof(struct SPropValue));
263 mem_ctx = talloc_named(session, 0, "ReloadCachedInformation");
264
265 /* Fill the ReloadCachedInformation operation */
266diff -up openchange-openchange-2.3-VULCAN/libmapi/IStream.c.covscan openchange-openchange-2.3-VULCAN/libmapi/IStream.c
267--- openchange-openchange-2.3-VULCAN/libmapi/IStream.c.covscan 2015-05-16 17:22:04.000000000 +0200
268+++ openchange-openchange-2.3-VULCAN/libmapi/IStream.c 2018-07-19 13:53:41.287450703 +0200
269@@ -183,6 +183,7 @@ _PUBLIC_ enum MAPISTATUS ReadStream(mapi
270 if ((retval = mapi_object_get_logon_id(obj_stream, &logon_id)) != MAPI_E_SUCCESS)
271 return retval;
272
273+ memset(&request, 0, sizeof(struct ReadStream_req));
274 mem_ctx = talloc_named(session, 0, "ReadStream");
275
276 *ByteRead = 0;
277diff -up openchange-openchange-2.3-VULCAN/libmapi++/src/folder.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/src/folder.cpp
278--- openchange-openchange-2.3-VULCAN/libmapi++/src/folder.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
279+++ openchange-openchange-2.3-VULCAN/libmapi++/src/folder.cpp 2018-07-19 13:53:41.287450703 +0200
280@@ -57,7 +57,7 @@ folder::message_container_type folder::f
281 message_container.push_back(message_shared_ptr(new message(m_session,
282 m_id,
283 row_set.aRow[i].lpProps[1].value.d)));
284- } catch(mapi_exception e) {
285+ } catch(mapi_exception &e) {
286 mapi_object_release(&contents_table);
287 throw;
288 }
289@@ -102,7 +102,7 @@ folder::hierarchy_container_type folder:
290 try {
291 hierarchy_container.push_back(folder_shared_ptr(new folder(*this,
292 row_set.aRow[i].lpProps[0].value.d)));
293- } catch(mapi_exception e) {
294+ } catch(mapi_exception &e) {
295 mapi_object_release(&hierarchy_table);
296 throw;
297 }
298diff -up openchange-openchange-2.3-VULCAN/libmapi++/src/message.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/src/message.cpp
299--- openchange-openchange-2.3-VULCAN/libmapi++/src/message.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
300+++ openchange-openchange-2.3-VULCAN/libmapi++/src/message.cpp 2018-07-19 13:53:41.287450703 +0200
301@@ -50,7 +50,7 @@ message::attachment_container_type messa
302 try {
303 attachment_container.push_back(attachment_shared_ptr(new attachment(*this, row_set.aRow[i].lpProps[0].value.l)));
304 }
305- catch(mapi_exception e) {
306+ catch(mapi_exception &e) {
307 mapi_object_release(&attachment_table);
308 throw;
309 }
310diff -up openchange-openchange-2.3-VULCAN/libmapi++/src/session.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/src/session.cpp
311--- openchange-openchange-2.3-VULCAN/libmapi++/src/session.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
312+++ openchange-openchange-2.3-VULCAN/libmapi++/src/session.cpp 2018-07-19 13:53:41.287450703 +0200
313@@ -61,7 +61,7 @@ void session::login(const std::string& p
314 if (m_profile_name == "") { // if profile is not set, try to get default profile
315 try {
316 m_profile_name = profile_database().get_default_profile_name();
317- } catch(mapi_exception e) {
318+ } catch(mapi_exception &e) {
319 uninitialize();
320 throw;
321 }
322@@ -74,7 +74,7 @@ void session::login(const std::string& p
323
324 try {
325 m_message_store->open(m_session);
326- } catch (mapi_exception e) {
327+ } catch (mapi_exception &e) {
328 throw;
329 }
330 }
331diff -up openchange-openchange-2.3-VULCAN/libmapi++/tests/attach_test.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/tests/attach_test.cpp
332--- openchange-openchange-2.3-VULCAN/libmapi++/tests/attach_test.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
333+++ openchange-openchange-2.3-VULCAN/libmapi++/tests/attach_test.cpp 2018-07-19 13:53:41.287450703 +0200
334@@ -84,11 +84,11 @@ int main()
335
336 print_folder_tree(top_folder, mapi_session);
337 }
338- catch (mapi_exception e) // Catch any mapi exceptions
339+ catch (mapi_exception &e) // Catch any mapi exceptions
340 {
341 cout << "MAPI Exception @ main: " << e.what() << endl;
342 }
343- catch (std::runtime_error e) // Catch runtime exceptions
344+ catch (std::runtime_error &e) // Catch runtime exceptions
345 {
346 cout << "std::runtime_error exception @ main: " << e.what() << endl;
347 }
348diff -up openchange-openchange-2.3-VULCAN/libmapi++/tests/exception_test.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/tests/exception_test.cpp
349--- openchange-openchange-2.3-VULCAN/libmapi++/tests/exception_test.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
350+++ openchange-openchange-2.3-VULCAN/libmapi++/tests/exception_test.cpp 2018-07-19 13:53:41.287450703 +0200
351@@ -12,7 +12,7 @@ int main()
352 try {
353 dotest();
354 }
355- catch (libmapipp::mapi_exception e) {
356+ catch (libmapipp::mapi_exception &e) {
357 std::cout << e.what() << std::endl;
358 }
359
360diff -up openchange-openchange-2.3-VULCAN/libmapi++/tests/profile_test.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/tests/profile_test.cpp
361--- openchange-openchange-2.3-VULCAN/libmapi++/tests/profile_test.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
362+++ openchange-openchange-2.3-VULCAN/libmapi++/tests/profile_test.cpp 2018-07-19 13:53:41.287450703 +0200
363@@ -27,15 +27,18 @@
364 #define PROFILEDB_NAME_TEMPLATE "/tmp/mapidbXXXXXX"
365 int main ()
366 {
367+ char *tmpname = NULL, *tmpname2 = NULL;
368+
369 try {
370 libmapipp::profile_database db;
371
372 std::cout << "default profile name: " << db.get_default_profile_name() << std::endl;
373
374 {
375- char *tmpname = (char*) calloc(sizeof(PROFILEDB_NAME_TEMPLATE) + 1, sizeof(char));
376- strncpy(tmpname, PROFILEDB_NAME_TEMPLATE, sizeof(PROFILEDB_NAME_TEMPLATE));
377- int ret = mkstemp(tmpname);
378+ int ret;
379+
380+ tmpname = strdup(PROFILEDB_NAME_TEMPLATE);
381+ ret = mkstemp(tmpname);
382 if (ret < 0) {
383 std::cout << "failed to create temporary file: " << strerror(errno) << std::endl;
384 }
385@@ -45,12 +48,15 @@ int main ()
386 std::cout << "failed to create a temporary profile store" << std::endl;
387 }
388 unlink(tmpname);
389+ free(tmpname);
390+ tmpname = NULL;
391 }
392
393 {
394- char *tmpname2 = (char*) calloc(sizeof(PROFILEDB_NAME_TEMPLATE) + 1, sizeof(char));
395- strncpy(tmpname2, PROFILEDB_NAME_TEMPLATE, sizeof(PROFILEDB_NAME_TEMPLATE));
396- int ret = mkstemp(tmpname2);
397+ int ret;
398+
399+ tmpname2 = strdup(PROFILEDB_NAME_TEMPLATE);
400+ ret = mkstemp(tmpname2);
401 if (ret < 0) {
402 std::cout << "failed to create temporary file: " << strerror(errno) << std::endl;
403 }
404@@ -60,19 +66,33 @@ int main ()
405 std::cout << "failed to create a temporary profile store with std::string" << std::endl;
406 }
407 unlink(tmpname2);
408+ free(tmpname2);
409+ tmpname2 = NULL;
410 }
411
412 std::cout << "finished profile and profile database tests" << std::endl;
413 }
414- catch (libmapipp::mapi_exception e) // Catch any mapi exceptions
415+ catch (libmapipp::mapi_exception &e) // Catch any mapi exceptions
416 {
417 std::cout << "MAPI Exception @ main: " << e.what() << std::endl;
418 }
419- catch (std::runtime_error e) // Catch runtime exceptions
420+ catch (std::runtime_error &e) // Catch runtime exceptions
421 {
422 std::cout << "std::runtime_error exception @ main: " << e.what() << std::endl;
423
424 }
425
426+ if (tmpname) {
427+ unlink(tmpname);
428+ free(tmpname);
429+ tmpname = NULL;
430+ }
431+
432+ if (tmpname2) {
433+ unlink(tmpname2);
434+ free(tmpname2);
435+ tmpname2 = NULL;
436+ }
437+
438 return 0;
439 }
440diff -up openchange-openchange-2.3-VULCAN/libmapi++/tests/test.cpp.covscan openchange-openchange-2.3-VULCAN/libmapi++/tests/test.cpp
441--- openchange-openchange-2.3-VULCAN/libmapi++/tests/test.cpp.covscan 2015-05-16 17:22:04.000000000 +0200
442+++ openchange-openchange-2.3-VULCAN/libmapi++/tests/test.cpp 2018-07-19 13:53:41.288450703 +0200
443@@ -126,11 +126,11 @@ int main ()
444
445 cout << "finished session" << endl;
446 }
447- catch (mapi_exception e) // Catch any mapi exceptions
448+ catch (mapi_exception &e) // Catch any mapi exceptions
449 {
450 cout << "MAPI Exception @ main: " << e.what() << endl;
451 }
452- catch (std::runtime_error e) // Catch runtime exceptions
453+ catch (std::runtime_error &e) // Catch runtime exceptions
454 {
455 cout << "std::runtime_error exception @ main: " << e.what() << endl;
456
457diff -up openchange-openchange-2.3-VULCAN/libocpf/ocpf_api.c.covscan openchange-openchange-2.3-VULCAN/libocpf/ocpf_api.c
458--- openchange-openchange-2.3-VULCAN/libocpf/ocpf_api.c.covscan 2015-05-16 17:22:04.000000000 +0200
459+++ openchange-openchange-2.3-VULCAN/libocpf/ocpf_api.c 2018-07-19 13:53:41.288450703 +0200
460@@ -316,6 +316,8 @@ int ocpf_propvalue(struct ocpf_context *
461 if (!ocpf || !ocpf->mem_ctx) return OCPF_ERROR;
462 if (!ctx) return OCPF_ERROR;
463
464+ memset(&lpProps, 0, sizeof(struct SPropValue));
465+
466 switch (scope) {
467 case kw_PROPERTY:
468 /* Sanity check: do not insert the same property twice */
469diff -up openchange-openchange-2.3-VULCAN/libocpf/ocpf_public.c.covscan openchange-openchange-2.3-VULCAN/libocpf/ocpf_public.c
470--- openchange-openchange-2.3-VULCAN/libocpf/ocpf_public.c.covscan 2015-05-16 17:22:04.000000000 +0200
471+++ openchange-openchange-2.3-VULCAN/libocpf/ocpf_public.c 2018-07-19 13:53:41.288450703 +0200
472@@ -537,6 +537,8 @@ static bool set_external_recipients(TALL
473 uint32_t last;
474 struct SPropValue SPropValue;
475
476+ memset(&SPropValue, 0, sizeof(struct SPropValue));
477+
478 SRowSet->aRow = talloc_realloc(mem_ctx, SRowSet->aRow, struct SRow, SRowSet->cRows + 2);
479 last = SRowSet->cRows;
480 SRowSet->aRow[last].cValues = 0;
481@@ -626,6 +628,8 @@ _PUBLIC_ enum MAPISTATUS ocpf_set_Recipi
482
483 MAPI_RETVAL_IF(!ctx->recipients->cRows, MAPI_E_NOT_FOUND, NULL);
484
485+ memset(&SPropValue, 0, sizeof(struct SPropValue));
486+
487 SPropTagArray = set_SPropTagArray(mem_ctx, 0x8,
488 PidTagObjectType,
489 PidTagDisplayName,
490diff -up openchange-openchange-2.3-VULCAN/ndr_mapi.c.covscan openchange-openchange-2.3-VULCAN/ndr_mapi.c
491--- openchange-openchange-2.3-VULCAN/ndr_mapi.c.covscan 2018-07-19 13:53:41.276450703 +0200
492+++ openchange-openchange-2.3-VULCAN/ndr_mapi.c 2018-07-19 13:53:41.288450703 +0200
493@@ -1310,8 +1310,11 @@ _PUBLIC_ enum ndr_err_code ndr_pull_EcDo
494 NDR_PULL_ALLOC(ndr, r->out.pulTimeStamp);
495 *r->out.pulTimeStamp = *r->in.pulTimeStamp;
496 NDR_PULL_ALLOC(ndr, r->out.pcbAuxOut);
497- *r->out.pcbAuxOut = *r->in.pcbAuxOut;
498- }
499+ if (r->in.pcbAuxOut)
500+ *r->out.pcbAuxOut = *r->in.pcbAuxOut;
501+ else
502+ *r->out.pcbAuxOut = 0;
503+ }
504
505 if (flags & NDR_OUT) {
506 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
507diff -up openchange-openchange-2.3-VULCAN/script/makepropslist.py.covscan openchange-openchange-2.3-VULCAN/script/makepropslist.py
508--- openchange-openchange-2.3-VULCAN/script/makepropslist.py.covscan 2015-05-16 17:22:04.000000000 +0200
509+++ openchange-openchange-2.3-VULCAN/script/makepropslist.py 2018-07-19 13:53:41.288450703 +0200
510@@ -992,7 +992,7 @@ def check_duplicate_alternative_names():
511 if previous_alternative_names.has_key(altname):
512 print "\tIn section", entry["OXPROPS_Sect"], ", alternative name:", altname, "duplicates name in section", previous_alternative_names[altname]
513 if previous_canonical_names.has_key(altname):
514- print "\tIn section", entry["OXPROPS_Sect"], ", alternative name:", altname, "duplicates canonical name in section", previous_alternative_names[altname]
515+ print "\tIn section", entry["OXPROPS_Sect"], ", alternative name:", altname, "duplicates canonical name in section", previous_canonical_names[altname]
516 previous_alternative_names[altname] = (entry["OXPROPS_Sect"])
517
518 def check_duplicate_propids():
519diff -up openchange-openchange-2.3-VULCAN/testprogs/test_asyncnotif.c.covscan openchange-openchange-2.3-VULCAN/testprogs/test_asyncnotif.c
520--- openchange-openchange-2.3-VULCAN/testprogs/test_asyncnotif.c.covscan 2015-05-16 17:22:04.000000000 +0200
521+++ openchange-openchange-2.3-VULCAN/testprogs/test_asyncnotif.c 2018-07-19 13:53:41.288450703 +0200
522@@ -109,12 +109,16 @@ static int callback(uint16_t Notificatio
523 break;
524 case fnevMbit|fnevObjectDeleted:
525 OC_DEBUG(0, "[+] Message deleted");
526+ break;
527 case fnevMbit|fnevObjectModified:
528 OC_DEBUG(0, "[+] Message modified");
529+ break;
530 case fnevMbit|fnevObjectMoved:
531 OC_DEBUG(0, "[+] Message moved");
532+ break;
533 case fnevMbit|fnevObjectCopied:
534 OC_DEBUG(0, "[+] Message copied");
535+ break;
536 case fnevMbit|fnevTableModified:
537 ctable = (struct ContentsTableChange *) NotificationData;
538 switch (ctable->TableEvent) {
539@@ -143,6 +147,7 @@ static int callback(uint16_t Notificatio
540 break;
541 case fnevMbit|fnevSbit|fnevObjectModified:
542 OC_DEBUG(0, "[+] A property on a message in a search folder has changed");
543+ break;
544 case fnevMbit|fnevSbit|fnevTableModified:
545 stable = (struct ContentsTableChange *) NotificationData;
546 switch (stable->TableEvent) {
547@@ -250,6 +255,7 @@ int main(int argc, const char *argv[])
548
549 retval = MAPIInitialize(&mapi_ctx, opt_profdb);
550 if (retval != MAPI_E_SUCCESS) {
551+ talloc_free(mem_ctx);
552 mapi_errstr("MAPIInitialize", retval);
553 exit (1);
554 }
555@@ -261,6 +267,10 @@ int main(int argc, const char *argv[])
556 SetMAPIDebugLevel(mapi_ctx, atoi(opt_debug));
557 }
558
559+ mapi_object_init(&obj_store);
560+ mapi_object_init(&obj_inbox);
561+ mapi_object_init(&obj_contentstable);
562+
563 /* if no profile is supplied use the default one */
564 if (!opt_profname) {
565 retval = GetDefaultProfile(mapi_ctx, &opt_profname);
566@@ -280,7 +290,6 @@ int main(int argc, const char *argv[])
567 }
568
569 /* Open the default message store */
570- mapi_object_init(&obj_store);
571
572 retval = OpenMsgStore(session, &obj_store);
573 if (retval != MAPI_E_SUCCESS) {
574@@ -292,11 +301,9 @@ int main(int argc, const char *argv[])
575 retval = GetReceiveFolder(&obj_store, &fid, NULL);
576 MAPI_RETVAL_IF(retval, retval, mem_ctx);
577
578- mapi_object_init(&obj_inbox);
579 retval = OpenFolder(&obj_store, fid, &obj_inbox);
580 MAPI_RETVAL_IF(retval, retval, mem_ctx);
581
582- mapi_object_init(&obj_contentstable);
583 retval = GetContentsTable(&obj_inbox, &obj_contentstable, 0, &count);
584 printf("mailbox contains %i messages\n", count);
585
586diff -up openchange-openchange-2.3-VULCAN/utils/mapipropsdump.c.covscan openchange-openchange-2.3-VULCAN/utils/mapipropsdump.c
587--- openchange-openchange-2.3-VULCAN/utils/mapipropsdump.c.covscan 2018-07-19 13:53:41.276450703 +0200
588+++ openchange-openchange-2.3-VULCAN/utils/mapipropsdump.c 2018-07-19 13:53:41.289450703 +0200
589@@ -79,21 +79,21 @@
590 */
591
592
593-static const const struct ndr_interface_table *load_exchange_emsmdb_dso(const char *plugin)
594+static const struct ndr_interface_table *load_exchange_emsmdb_dso(const char *plugin, void **phandle)
595 {
596 const struct ndr_interface_table *p;
597- void *handle;
598
599- handle = dlopen(plugin, RTLD_NOW);
600- if (handle == NULL) {
601+ *phandle = dlopen(plugin, RTLD_NOW);
602+ if (*phandle == NULL) {
603 printf("%s: Unable to open: %s\n", plugin, dlerror());
604 return NULL;
605 }
606
607- p = (const struct ndr_interface_table *) dlsym(handle, "ndr_table_exchange_emsmdb");
608+ p = (const struct ndr_interface_table *) dlsym(*phandle, "ndr_table_exchange_emsmdb");
609 if (!p) {
610 OC_DEBUG(0, "%s: Unable to find DCE/RPC interface table for 'ndr_table_exchange_emsmdb': %s", plugin, dlerror());
611- dlclose(handle);
612+ dlclose(*phandle);
613+ *phandle = NULL;
614 return NULL;
615 }
616
617@@ -409,6 +409,7 @@ int main(int argc, const char *argv[])
618 struct SPropTagArray *s;
619 const char *opt_reqfile = NULL;
620 const char *opt_replfile = NULL;
621+ void *plhandle = NULL;
622 poptContext pc;
623 int opt;
624 int index = -1;
625@@ -442,7 +443,7 @@ int main(int argc, const char *argv[])
626 exit (1);
627 }
628
629- p = load_exchange_emsmdb_dso(PLUGIN);
630+ p = load_exchange_emsmdb_dso(PLUGIN, &plhandle);
631 if (!p) {
632 exit (1);
633 }
634@@ -454,6 +455,7 @@ int main(int argc, const char *argv[])
635 s = process_request(mem_ctx, f, opt_reqfile, &opnum, &index);
636 if (!s) {
637 talloc_free(mem_ctx);
638+ dlclose(plhandle);
639 exit (1);
640 }
641
642@@ -461,9 +463,12 @@ int main(int argc, const char *argv[])
643 ret = process_response(mem_ctx, f, opt_replfile, s, opnum, index);
644 if (ret == -1) {
645 talloc_free(mem_ctx);
646+ dlclose(plhandle);
647 exit (1);
648 }
649
650 talloc_free(mem_ctx);
651+ dlclose(plhandle);
652+
653 return (0);
654 }
655diff -up openchange-openchange-2.3-VULCAN/utils/openchangeclient.c.covscan openchange-openchange-2.3-VULCAN/utils/openchangeclient.c
656--- openchange-openchange-2.3-VULCAN/utils/openchangeclient.c.covscan 2018-07-19 13:53:41.277450703 +0200
657+++ openchange-openchange-2.3-VULCAN/utils/openchangeclient.c 2018-07-19 13:53:41.289450703 +0200
658@@ -629,6 +629,8 @@ static bool set_external_recipients(TALL
659 uint32_t last;
660 struct SPropValue SPropValue;
661
662+ memset(&SPropValue, 0, sizeof(struct SPropValue));
663+
664 SRowSet->aRow = talloc_realloc(mem_ctx, SRowSet->aRow, struct SRow, SRowSet->cRows + 1);
665 last = SRowSet->cRows;
666 SRowSet->aRow[last].cValues = 0;
667@@ -821,6 +823,8 @@ static enum MAPISTATUS openchangeclient_
668 mapi_object_init(&obj_outbox);
669 mapi_object_init(&obj_message);
670
671+ memset(&SPropValue, 0, sizeof(struct SPropValue));
672+
673 if (oclient->pf == true) {
674 retval = openchangeclient_getpfdir(mem_ctx, obj_store, &obj_outbox, oclient->folder);
675 if (retval != MAPI_E_SUCCESS) return retval;
This page took 0.135825 seconds and 4 git commands to generate.