about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorlightb <lightb@bigfoot>2014-04-19 04:00:41 -0400
committerlightb <lightb@bigfoot>2014-04-19 04:00:41 -0400
commit02b77cfa4e9b600c03c2fa79ab0e3fa55c33961f (patch)
treec94f656f74fcabdaae7adf4b3426fc92fdc8cbd1 /src
parent3303376b4209a7f6005332bd113642ad68ca3c1e (diff)
downloadprofani-tty-02b77cfa4e9b600c03c2fa79ab0e3fa55c33961f.tar.gz
Added PREF_OTR_POLICY to preferences.c -> key -> otr.policy
Added default value "manual" to PREF_OTR_POLICy -> preferences.c
Modified help string to reflect otr_policy, started checks on cmd_otr
Diffstat (limited to 'src')
-rw-r--r--src/command/command.c5
-rw-r--r--src/command/commands.c7
-rw-r--r--src/config/preferences.c4
-rw-r--r--src/otr/otr.c1
4 files changed, 15 insertions, 2 deletions
diff --git a/src/command/command.c b/src/command/command.c
index 23d5bae4..31a481b7 100644
--- a/src/command/command.c
+++ b/src/command/command.c
@@ -594,8 +594,8 @@ static struct cmd_t command_defs[] =
 
     { "/otr",
         cmd_otr, parse_args, 1, 2, NULL,
-        { "/otr gen|myfp|theirfp|start|end|trust|untrust|log|warn|libver", "Off The Record encryption commands.",
-        { "/otr gen|myfp|theirfp|start|end|trust|untrust|log|warn|libver",
+        { "/otr gen|myfp|theirfp|start|end|trust|untrust|log|warn|libver|policy", "Off The Record encryption commands.",
+        { "/otr gen|myfp|theirfp|start|end|trust|untrust|log|warn|libver|policy",
           "-------------------------------------------------------------",
           "gen - Generate your private key.",
           "myfp - Show your fingerprint.",
@@ -607,6 +607,7 @@ static struct cmd_t command_defs[] =
           "log - How to log OTR messages, options are 'on', 'off' and 'redact', with redaction being the default.",
           "warn - Show when unencrypted messaging is being used in the title bar, options are 'on' and 'off' with 'on' being the default.",
           "libver - Show which version of the libotr library is being used.",
+	  "policy - manual, opportunistic or always.",
           NULL } } },
 
     { "/outtype",
diff --git a/src/command/commands.c b/src/command/commands.c
index 8e026b50..ad94211c 100644
--- a/src/command/commands.c
+++ b/src/command/commands.c
@@ -2609,6 +2609,13 @@ cmd_otr(gchar **args, struct cmd_help_t help)
         char *version = otr_libotr_version();
         cons_show("Using libotr version %s", version);
         return TRUE;
+    } else if (strcmp(args[0], "policy") == 0) {
+	char *choice	=	args[1];
+	if (g_strcmp0(choice, "manual") == 0) {
+		prefs_set_string(PREF_OTR_POLICY, "manual");
+		cons_show("OTR policy is now set to: manual");
+		}
+	return TRUE;
     }
 
     if (jabber_get_connection_status() != JABBER_CONNECTED) {
diff --git a/src/config/preferences.c b/src/config/preferences.c
index 9cc91cb6..4c00597e 100644
--- a/src/config/preferences.c
+++ b/src/config/preferences.c
@@ -466,6 +466,8 @@ _get_key(preference_t pref)
             return "otr";
         case PREF_OTR_WARN:
             return "otr.warn";
+	case PREF_OTR_POLICY:
+	    return "otr.policy";
         case PREF_LOG_ROTATE:
             return "rotate";
         case PREF_LOG_SHARED:
@@ -500,6 +502,8 @@ _get_default_string(preference_t pref)
             return "off";
         case PREF_OTR_LOG:
             return "redact";
+	case PREF_OTR_POLICY:
+	    return "manual";
         case PREF_STATUSES_CONSOLE:
         case PREF_STATUSES_CHAT:
         case PREF_STATUSES_MUC:
diff --git a/src/otr/otr.c b/src/otr/otr.c
index 5424b09a..8ff64640 100644
--- a/src/otr/otr.c
+++ b/src/otr/otr.c
@@ -421,6 +421,7 @@ _otr_get_their_fingerprint(const char * const recipient)
 static char *
 _otr_encrypt_message(const char * const to, const char * const message)
 {
+	return NULL;
     char *newmessage = NULL;
     gcry_error_t err = otrlib_encrypt_message(user_state, &ops, jid, to, message, &newmessage);