Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:jberkman
evolution-data-server-2.6
gw-send-options.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gw-send-options.patch of Package evolution-data-server-2.6
--- servers/groupwise/e-gw-sendoptions.h 2005/08/31 04:26:10 6236 +++ servers/groupwise/e-gw-sendoptions.h 2006/07/17 11:00:50 7210 @@ -54,6 +54,15 @@ } EGwSendOptionsPriority; typedef enum { + E_GW_SECURITY_NORMAL, + E_GW_SECURITY_PROPRIETARY, + E_GW_SECURITY_CONFIDENTIAL, + E_GW_SECURITY_SECRET, + E_GW_SECURITY_TOP_SECRET, + E_GW_SECURITY_FOR_YOUR_EYES_ONLY +} EGwSendOptionsSecurity; + +typedef enum { E_GW_RETURN_NOTIFY_NONE, E_GW_RETURN_NOTIFY_MAIL } EGwSendOptionsReturnNotify; --- servers/groupwise/e-gw-item.c 2006/06/16 07:28:44 7142 +++ servers/groupwise/e-gw-item.c 2006/07/17 11:00:50 7210 @@ -55,6 +55,7 @@ char *task_priority; char *place; char *source ; + char *security; GSList *recipient_list; GSList *recurrence_dates; GSList *exdate_list; @@ -1694,13 +1695,18 @@ /* now add all properties to the private structure */ for (child = soup_soap_parameter_get_first_child (subparam); - child != NULL; - child = soup_soap_parameter_get_next_child (child)) { + child != NULL; + child = soup_soap_parameter_get_next_child (child)) { const char *name; char *value; name = soup_soap_parameter_get_name (child); + if (!g_ascii_strcasecmp (name, "security")) { + item->priv->security = soup_soap_parameter_get_string_value (child); + item->priv->classification = soup_soap_parameter_get_string_value (child); + continue; + } if (!g_ascii_strcasecmp (name, "acceptLevel")) item->priv->accept_level = soup_soap_parameter_get_string_value (child); @@ -2258,6 +2264,16 @@ item->priv->classification = g_strdup (new_class); } +void +e_gw_item_set_security (EGwItem *item, const char *new_class) +{ + g_return_if_fail (E_IS_GW_ITEM (item)); + + if (item->priv->security) + g_free (item->priv->security); + item->priv->security = g_strdup (new_class); +} + gboolean e_gw_item_get_completed (EGwItem *item) { @@ -3107,6 +3123,9 @@ case E_GW_ITEM_TYPE_MAIL : soup_soap_message_add_attribute (msg, "type", "Mail", "xsi", NULL); + if (priv->security) + e_gw_message_write_string_parameter (msg, "security", NULL, priv->security); + /*The subject*/ if (priv->subject) e_gw_message_write_string_parameter (msg, "subject", NULL, priv->subject) ; --- camel/providers/groupwise/camel-groupwise-utils.c 2006/07/05 10:18:14 7178 +++ camel/providers/groupwise/camel-groupwise-utils.c 2006/07/17 11:00:50 7210 @@ -358,6 +358,7 @@ len = strlen (message_id); msgid = (char *)g_malloc0 (len-1); msgid = memcpy(msgid, message_id+2, len-3); + g_print ("||| msgid:%s\n", msgid); status = e_gw_connection_forward_item (cnc, msgid, NULL, TRUE, &temp_item); g_free (msgid); @@ -547,7 +548,24 @@ break; } } - + + send_options = (char *)camel_medium_get_header (CAMEL_MEDIUM (message), X_SEND_OPT_SECURITY); + if (send_options) { + switch (atoi(send_options)) { + case E_GW_SECURITY_NORMAL : e_gw_item_set_security(item, "Normal"); + break; + case E_GW_SECURITY_PROPRIETARY : e_gw_item_set_security(item, "Proprietary"); + break; + case E_GW_SECURITY_CONFIDENTIAL : e_gw_item_set_security(item, "Confidential"); + break; + case E_GW_SECURITY_SECRET : e_gw_item_set_security(item, "Secret"); + break; + case E_GW_SECURITY_TOP_SECRET : e_gw_item_set_security(item, "TopSecret"); + break; + case E_GW_SECURITY_FOR_YOUR_EYES_ONLY : e_gw_item_set_security(item, "ForYourEyesOnly"); + break; + } + } return item; } --- camel/providers/groupwise/camel-groupwise-utils.h 2006/06/06 20:07:47 7089 +++ camel/providers/groupwise/camel-groupwise-utils.h 2006/07/17 11:00:50 7210 @@ -31,6 +31,7 @@ #define X_SEND_OPTIONS "X-gw-send-options" /*General Options*/ #define X_SEND_OPT_PRIORITY "X-gw-send-opt-priority" +#define X_SEND_OPT_SECURITY "X-gw-send-opt-security" #define X_REPLY_CONVENIENT "X-reply-convenient" #define X_REPLY_WITHIN "X-reply-within" #define X_EXPIRE_AFTER "X-expire-after"
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor