2 /*======================================================================
4 CREATOR: eric 20 April 1999
6 $Id: icalcstp.h,v 1.8 2008-01-02 20:15:44 dothebart Exp $
9 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org
11 This program is free software; you can redistribute it and/or modify
12 it under the terms of either:
14 The LGPL as published by the Free Software Foundation, version
15 2.1, available at: http://www.fsf.org/copyleft/lesser.html
19 The Mozilla Public License Version 1.0. You may obtain a copy of
20 the License at http://www.mozilla.org/MPL/
22 The original code is icalcstp.h
24 ======================================================================*/
30 #include <libical/ical.h>
33 /* Connection state, from the state machine in RFC2445 */
43 /* CSTP Commands that a client can issue to a server */
44 typedef enum icalcstp_command {
46 ICAL_AUTHENTICATE_COMMAND,
47 ICAL_CAPABILITY_COMMAND,
48 ICAL_CONTINUE_COMMAND,
49 ICAL_CALIDEXPAND_COMMAND,
50 ICAL_IDENTIFY_COMMAND,
51 ICAL_DISCONNECT_COMMAND,
52 ICAL_SENDDATA_COMMAND,
53 ICAL_STARTTLS_COMMAND,
54 ICAL_UPNEXPAND_COMMAND,
55 ICAL_COMPLETE_COMMAND,
61 /* A statement is a combination of command or response code and a
62 component that the server and client exchage with each other. */
63 struct icalcstp_statement {
64 icalcstp_command command;
65 char* str_data; /* If non-NUll use as arguments to command */
66 int int_data; /* If non-NULL use as arguments to command */
68 icalrequeststatus code;
73 const char* icalcstp_command_to_string(icalcstp_command command);
74 icalcstp_command icalcstp_string_to_command(const char* str);
76 #endif /* !ICALCSTP_H */