summaryrefslogtreecommitdiff
path: root/sicepat.c
diff options
context:
space:
mode:
Diffstat (limited to 'sicepat.c')
-rw-r--r--sicepat.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/sicepat.c b/sicepat.c
index e03be36..ffa83c3 100644
--- a/sicepat.c
+++ b/sicepat.c
@@ -1,6 +1,8 @@
#include "shipping.h"
#include "handler.h"
+#define BASE "http://api.sicepat.com/customer/"
+
extern CURL *curl;
static const char *status_trail[] = {
@@ -10,20 +12,18 @@ static const char *status_trail[] = {
NULL
};
-void sicepat_init(char *provisions[], struct shipping *shipping)
+void sicepat_init(char *provisions[])
{
- static const char *url = "http://api.sicepat.com/customer/";
- shipping->base = malloc(strlen(url) + 1);
- strcpy(shipping->base, url);
- headers((const char *[]){ "api-key", NULL }, provisions, shipping);
+ shipping.base = malloc(strlen(BASE) + 1);
+ strcpy(shipping.base, BASE);
+ headers((const char *[]){ "api-key", NULL }, provisions);
}
-void sicepat_services(const char *origin, const char *destination, double weight,
- struct shipping *shipping, char **url)
+void sicepat_services(const char *origin, const char *destination, double weight, char **url)
{
- *url = malloc(strlen(shipping->base) + strlen("tariff?origin=") + strlen(origin)
+ *url = malloc(strlen(shipping.base) + strlen("tariff?origin=") + strlen(origin)
+ strlen("&destination=") + strlen(destination) + strlen("&weight=") + 9);
- sprintf(*url, "%stariff?origin=%s&destination=%s&weight=%f", shipping->base,
+ sprintf(*url, "%stariff?origin=%s&destination=%s&weight=%f", shipping.base,
origin, destination, weight);
curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
}
@@ -32,7 +32,7 @@ size_t sicepat_services_handle(const char *contents, size_t size, size_t nmemb,
struct pikul_services **services)
{
size_t realsize = size * nmemb;
- handle_services(contents, realsize, status_trail, (const char *[]){
+ handle(SERVICES, contents, realsize, status_trail, (const char *[]){
"sicepat",
"results",
NULL