diff options
Diffstat (limited to 'libical/src/libicalcap/client.c')
-rw-r--r-- | libical/src/libicalcap/client.c | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/libical/src/libicalcap/client.c b/libical/src/libicalcap/client.c deleted file mode 100644 index 399568ac79..0000000000 --- a/libical/src/libicalcap/client.c +++ /dev/null @@ -1,187 +0,0 @@ -/*- - * $Id$ - * - * See the file LICENSE for redistribution information. - * If you have not received a copy of the license, please contact CodeFactory - * by email at info@codefactory.se, or on the web at http://www.codefactory.se/ - * You may also write to: CodeFactory AB, SE-903 47, Umeå, Sweden. - * - * Copyright (c) 2002 Jonas Borgström <jonas@codefactory.se> - * Copyright (c) 2002 Daniel Lundin <daniel@codefactory.se> - * Copyright (c) 2002 CodeFactory AB. All rights reserved. - */ - -#include <stdio.h> -#include <stdlib.h> - -#include <librr/rr.h> - -#include "icalcap.h" -#include "icalcap_session.h" - -#define CLIENT_CAPABILITY \ -"Content-Type: text/html\n\n\ -BEGIN:VCALENDAR\n\ -VERSION:2.0\n\ -PRODIR:rrcap-client\n\ -CMD:REPLY\n\ -BEGIN:VREPLY\n\ -CAP-VERSION:1.0\n\ -PRODID:rrcap-client\n\ -QUERY-LEVEL:CAL-QL-NONE\n\ -CAR-LEVEL:CAR-FULL-NONE\n\ -DATE-MAX:99991231T235959Z\n\ -DATE-MIN:00000101T000000Z\n\ -MAX-COMPONENT-SIZE:0\n\ -COMPONENTS:VCALENDAR,VTODO,VJOURNAL,VEVENT,VCAR,\n\ - VALARM,VFREEBUSY,VTIMEZONE,STANDARD,DAYLIGHT,VREPLY\n\ -ITIP-VERSION:2447\n\ -RECUR-ACCEPTED:TRUE\n\ -RECUR-EXPAND:TRUE\n\ -RECUR-LIMIT:0\n\ -STORES-EXPANDED:FALSE\n\ -END:VREPLY\n\ -END:VCALENDAR\n" - - -icalcomponent * -icalcap_send_cmd(const icalcap *cap, const gchar *cmd, const gchar *id, int timeout) { - - icalcap_message*capmsg; - icalcomponent *comp, *ret = NULL; - icalproperty *prop; - - prop = icalproperty_vanew_cmd( - icalproperty_string_to_enum(cmd), - icalparameter_new_id(id), - 0); - - if (timeout > 0) { - char buf[16]; - - snprintf(buf, 16, "%d", timeout); - icalproperty_add_parameter(prop, - icalparameter_new_latency(buf)); - - icalproperty_add_parameter(prop, - icalparameter_new_actionparam(ICAL_ACTIONPARAM_ABORT)); - } - - comp = icalcomponent_vanew( - ICAL_VCALENDAR_COMPONENT, - icalproperty_new_version("2.0"), - icalproperty_new_prodid("-//I.Net spa//NONSGML//EN"), - prop, - 0); - - capmsg = icalcap_message_new(cap, comp); - ret = icalcap_message_sync_send(capmsg, timeout); - icalcap_message_free(capmsg); - icalcomponent_free(comp); - - return ret; -} - -icalcomponent * -icalcap_new_reply_component(const char *id, const icalcomponent *comp) { - - if (comp == NULL) - return NULL; - - return icalcomponent_vanew( - ICAL_VCALENDAR_COMPONENT, - icalproperty_new_version("2.0"), - icalproperty_new_prodid("-//I.Net spa//NONSGML//EN"), - icalproperty_vanew_cmd( - ICAL_CMD_REPLY, -/* icalparameter_new_id(id), */ - 0), - comp, - 0); -} - - -static int -msg_handler(const icalcap_message *capmsg) { - - icalcomponent *reply; - - g_message("Got: %s", icalcomponent_as_ical_string(capmsg->comp)); - - /* FIXME Check it's a GET-CAPABILITY */ - - reply = icalcap_new_reply_component(NULL, capmsg->comp); - if (reply == NULL) { - return FALSE; - } - - icalcomponent_add_property(reply, - icalproperty_new_prodid("client")); - - icalcomponent_free(reply); - return TRUE; -} - -int -main (gint argc, gchar **argv) -{ - icalcap_session*conn; - icalcap *cap; - icalcomponent *comp; - - int i, n; - int verbose = 0; - - if ((conn = icalcap_session_new()) == NULL) { - fprintf(stderr, "Init failed\n"); - exit(0); - } - - if (!icalcap_session_connect(conn, "gundam.inet.it", 0)) { - fprintf(stderr, "Connect failed\n"); - exit(0); - } - - if (!icalcap_session_login(conn, "user@example.com", "user@example.com", "password")) { - fprintf(stderr, "Login failed\n"); - exit(0); - } - - if ((cap = icalcap_session_start(conn, msg_handler)) == NULL) { - fprintf(stderr, "Start failed\n"); - exit(0); - } - - if (argc > 1 && *argv[1] == '1') - n = 100; - else - n = 1; - - for (i=0; i<n; i++) { - g_print("Test 1: %d\n", i); - - if ((comp = icalcap_send_cmd(cap, "GET-CAPABILITY", "zero",15)) - == NULL) { - fprintf(stderr, "Send failed\n"); - exit(0); - } - - if (verbose) - g_print("Got %s\n", icalcomponent_as_ical_string(comp)); - - if (comp) - icalcomponent_free(comp); - } - - if (!icalcap_stop(cap)) { - fprintf(stderr, "Stop failed\n"); - exit(0); - } - - if (!icalcap_session_disconnect(conn)) { - fprintf(stderr, "Disconnect failed\n"); - exit(0); - } - - return 0; -} |