diff options
author | Iru Cai <mytbk920423@gmail.com> | 2018-06-27 22:56:25 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2018-06-27 22:56:25 +0800 |
commit | e6d9edc048efb5b19d79bbe7871b2ff779d72311 (patch) | |
tree | 8d9eedd599f09d7aa9b64ab6251b9b9a092fce91 /util.h | |
download | matrix-curl-e6d9edc048efb5b19d79bbe7871b2ff779d72311.tar.xz |
initial code
Diffstat (limited to 'util.h')
-rw-r--r-- | util.h | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -0,0 +1,39 @@ +#ifndef MATRIX_CURL_UTIL_H +#define MATRIX_CURL_UTIL_H + +#include <curl/curl.h> +#include <json-c/json.h> +#include <string.h> + +CURLcode _curl_get(CURL *curl, const char *url, json_object **resp); +CURLcode _curl_post(CURL *curl, const char *url, const char *postdata, + json_object **resp); + +static inline int +json_add_string(json_object *j, const char *k, const char *v) +{ + return json_object_object_add(j, k, json_object_new_string(v)); +} + +static inline +const char *json_gets(json_object *j, const char *key) +{ + json_object *val; + + if (json_object_object_get_ex(j, key, &val)) { + if (json_object_is_type(val, json_type_string)) + return json_object_get_string(val); + } + return NULL; +} + +static inline +char* copy_str(const char *s) +{ + size_t l = strlen(s)+1; + char *ss = (char*)malloc(l); + memcpy(ss, s, l); + return ss; +} + +#endif |