/src/dovecot/src/lib/imem.c
Line | Count | Source (jump to first uncovered line) |
1 | | /* Copyright (c) 2002-2018 Dovecot authors, see the included COPYING file */ |
2 | | |
3 | | #include "lib.h" |
4 | | |
5 | | pool_t default_pool = &static_system_pool; |
6 | | |
7 | | void *i_malloc(size_t size) |
8 | 0 | { |
9 | 0 | return p_malloc(default_pool, size); |
10 | 0 | } |
11 | | |
12 | | void *i_realloc(void *mem, size_t old_size, size_t new_size) |
13 | 0 | { |
14 | 0 | return p_realloc(default_pool, mem, old_size, new_size); |
15 | 0 | } |
16 | | |
17 | | char *i_strdup(const char *str) |
18 | 10 | { |
19 | 10 | return p_strdup(default_pool, str); |
20 | 10 | } |
21 | | |
22 | | void *i_memdup(const void *data, size_t size) |
23 | 0 | { |
24 | 0 | return p_memdup(default_pool, data, size); |
25 | 0 | } |
26 | | |
27 | | char *i_strdup_empty(const char *str) |
28 | 0 | { |
29 | 0 | return p_strdup_empty(default_pool, str); |
30 | 0 | } |
31 | | |
32 | | char *i_strdup_until(const void *str, const void *end) |
33 | 0 | { |
34 | 0 | return p_strdup_until(default_pool, str, end); |
35 | 0 | } |
36 | | |
37 | | char *i_strndup(const void *str, size_t max_chars) |
38 | 0 | { |
39 | 0 | i_assert(str != NULL); |
40 | 0 | return p_strndup(default_pool, str, max_chars); |
41 | 0 | } |
42 | | |
43 | | char *i_strdup_printf(const char *format, ...) |
44 | 0 | { |
45 | 0 | va_list args; |
46 | 0 | char *ret; |
47 | |
|
48 | 0 | va_start(args, format); |
49 | 0 | ret = p_strdup_vprintf(default_pool, format, args); |
50 | 0 | va_end(args); |
51 | 0 | return ret; |
52 | 0 | } |
53 | | |
54 | | char *i_strdup_vprintf(const char *format, va_list args) |
55 | 0 | { |
56 | 0 | return p_strdup_vprintf(default_pool, format, args); |
57 | 0 | } |
58 | | |
59 | | char *i_strconcat(const char *str1, ...) |
60 | 0 | { |
61 | 0 | va_list args; |
62 | 0 | char *ret; |
63 | 0 | size_t len; |
64 | |
|
65 | 0 | i_assert(str1 != NULL); |
66 | | |
67 | 0 | va_start(args, str1); |
68 | |
|
69 | 0 | T_BEGIN { |
70 | 0 | const char *temp = vstrconcat(str1, args, &len); |
71 | 0 | t_buffer_alloc(len); |
72 | 0 | ret = p_malloc(default_pool, len); |
73 | 0 | memcpy(ret, temp, len); |
74 | 0 | } T_END; |
75 | | |
76 | 0 | va_end(args); |
77 | 0 | return ret; |
78 | 0 | } |