]> git.evergreen-ils.org Git - OpenSRF.git/blob - include/utils.h
1fac59dbb0f3e61a12aa2d9def754bd79d189272
[OpenSRF.git] / include / utils.h
1 #ifndef UTILS_H
2 #define UTILS_H
3
4 #include <stdarg.h>
5
6 #define BUFFER_MAX_SIZE 10485760 
7
8 void* safe_malloc(int size);
9
10 // ---------------------------------------------------------------------------------
11 // Generic growing buffer. Add data all you want
12 // ---------------------------------------------------------------------------------
13 struct growing_buffer_struct {
14         char *buf;
15         int n_used;
16         int size;
17 };
18 typedef struct growing_buffer_struct growing_buffer;
19
20 growing_buffer* buffer_init( int initial_num_bytes);
21 int buffer_addchar(growing_buffer* gb, char c);
22 int buffer_add(growing_buffer* gb, char* c);
23 int buffer_fadd(growing_buffer* gb, const char* format, ... );
24 int buffer_reset( growing_buffer* gb);
25 char* buffer_data( growing_buffer* gb);
26 int buffer_free( growing_buffer* gb );
27 int buffer_add_char(growing_buffer* gb, char c);
28
29
30 char* uescape( const char* string, int size, int full_escape );
31 double get_timestamp_millis();
32
33 #endif