about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorMichael Vetter <jubalh@iodoru.org>2020-07-10 17:48:34 +0200
committerMichael Vetter <jubalh@iodoru.org>2020-07-10 17:48:34 +0200
commit39315483a8e59deaba9a92e20fab0a2a7835873f (patch)
tree3b62918f8999023da1b63f5b9e2baadc9a791851 /src
parentb6361ddeabcc0596d194b36e312a93cfca9df394 (diff)
downloadprofani-tty-39315483a8e59deaba9a92e20fab0a2a7835873f.tar.gz
Remove `/tiny` command
boothj5 gave his okay too.

Fix https://github.com/profanity-im/profanity/issues/1370
Diffstat (limited to 'src')
-rw-r--r--src/command/cmd_defs.c17
-rw-r--r--src/command/cmd_funcs.c53
-rw-r--r--src/command/cmd_funcs.h1
-rw-r--r--src/tools/tinyurl.c100
-rw-r--r--src/tools/tinyurl.h44
5 files changed, 0 insertions, 215 deletions
diff --git a/src/command/cmd_defs.c b/src/command/cmd_defs.c
index 787de7cd..d78e6578 100644
--- a/src/command/cmd_defs.c
+++ b/src/command/cmd_defs.c
@@ -64,7 +64,6 @@
 #include "plugins/plugins.h"
 #include "tools/autocomplete.h"
 #include "tools/parser.h"
-#include "tools/tinyurl.h"
 #include "ui/ui.h"
 #include "ui/window_list.h"
 #include "xmpp/xmpp.h"
@@ -979,22 +978,6 @@ static struct cmd_t command_defs[] = {
                                   "/sub request",
                                   "/sub sent") },
 
-    { "/tiny",
-      parse_args, 1, 1, NULL,
-      CMD_NOSUBFUNCS
-          CMD_MAINFUNC(cmd_tiny)
-              CMD_TAGS(
-                  CMD_TAG_CHAT,
-                  CMD_TAG_GROUPCHAT)
-                  CMD_SYN(
-                      "/tiny <url>")
-                      CMD_DESC(
-                          "Send url as tinyurl in current chat.")
-                          CMD_ARGS(
-                              { "<url>", "The url to make tiny." })
-                              CMD_EXAMPLES(
-                                  "Example: /tiny https://profanity-im.github.io/") },
-
     { "/who",
       parse_args, 0, 2, NULL,
       CMD_NOSUBFUNCS
diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c
index ffc448db..96be6802 100644
--- a/src/command/cmd_funcs.c
+++ b/src/command/cmd_funcs.c
@@ -69,7 +69,6 @@
 #include "tools/http_upload.h"
 #include "tools/autocomplete.h"
 #include "tools/parser.h"
-#include "tools/tinyurl.h"
 #include "tools/bookmark_ignore.h"
 #include "plugins/plugins.h"
 #include "ui/ui.h"
@@ -5033,58 +5032,6 @@ cmd_alias(ProfWin* window, const char* const command, gchar** args)
 }
 
 gboolean
-cmd_tiny(ProfWin* window, const char* const command, gchar** args)
-{
-    char* url = args[0];
-
-    if (window->type != WIN_CHAT && window->type != WIN_MUC && window->type != WIN_PRIVATE) {
-        cons_show("/tiny can only be used in chat windows");
-        return TRUE;
-    }
-
-    if (!tinyurl_valid(url)) {
-        win_println(window, THEME_ERROR, "-", "/tiny, badly formed URL: %s", url);
-        return TRUE;
-    }
-
-    char* tiny = tinyurl_get(url);
-    if (!tiny) {
-        win_println(window, THEME_ERROR, "-", "Couldn't create tinyurl.");
-        return TRUE;
-    }
-
-    switch (window->type) {
-    case WIN_CHAT:
-    {
-        ProfChatWin* chatwin = (ProfChatWin*)window;
-        assert(chatwin->memcheck == PROFCHATWIN_MEMCHECK);
-        cl_ev_send_msg(chatwin, tiny, NULL);
-        break;
-    }
-    case WIN_PRIVATE:
-    {
-        ProfPrivateWin* privatewin = (ProfPrivateWin*)window;
-        assert(privatewin->memcheck == PROFPRIVATEWIN_MEMCHECK);
-        cl_ev_send_priv_msg(privatewin, tiny, NULL);
-        break;
-    }
-    case WIN_MUC:
-    {
-        ProfMucWin* mucwin = (ProfMucWin*)window;
-        assert(mucwin->memcheck == PROFMUCWIN_MEMCHECK);
-        cl_ev_send_muc_msg(mucwin, tiny, NULL);
-        break;
-    }
-    default:
-        break;
-    }
-
-    free(tiny);
-
-    return TRUE;
-}
-
-gboolean
 cmd_clear(ProfWin* window, const char* const command, gchar** args)
 {
     if (args[0] == NULL) {
diff --git a/src/command/cmd_funcs.h b/src/command/cmd_funcs.h
index 30059fc2..92c81364 100644
--- a/src/command/cmd_funcs.h
+++ b/src/command/cmd_funcs.h
@@ -128,7 +128,6 @@ gboolean cmd_status_get(ProfWin* window, const char* const command, gchar** args
 gboolean cmd_status_set(ProfWin* window, const char* const command, gchar** args);
 gboolean cmd_sub(ProfWin* window, const char* const command, gchar** args);
 gboolean cmd_theme(ProfWin* window, const char* const command, gchar** args);
-gboolean cmd_tiny(ProfWin* window, const char* const command, gchar** args);
 gboolean cmd_wintitle(ProfWin* window, const char* const command, gchar** args);
 gboolean cmd_vercheck(ProfWin* window, const char* const command, gchar** args);
 gboolean cmd_who(ProfWin* window, const char* const command, gchar** args);
diff --git a/src/tools/tinyurl.c b/src/tools/tinyurl.c
deleted file mode 100644
index 41ff43ec..00000000
--- a/src/tools/tinyurl.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * tinyurl.c
- * vim: expandtab:ts=4:sts=4:sw=4
- *
- * Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com>
- *
- * This file is part of Profanity.
- *
- * Profanity is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Profanity is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Profanity.  If not, see <https://www.gnu.org/licenses/>.
- *
- * In addition, as a special exception, the copyright holders give permission to
- * link the code of portions of this program with the OpenSSL library under
- * certain conditions as described in each individual source file, and
- * distribute linked combinations including the two.
- *
- * You must obey the GNU General Public License in all respects for all of the
- * code used other than OpenSSL. If you modify file(s) with this exception, you
- * may extend this exception to your version of the file(s), but you are not
- * obligated to do so. If you do not wish to do so, delete this exception
- * statement from your version. If you delete this exception statement from all
- * source files in the program, then also delete it here.
- *
- */
-
-#include <stdlib.h>
-#include <string.h>
-#include <sys/select.h>
-
-#include <curl/curl.h>
-#include <curl/easy.h>
-#include <glib.h>
-
-struct curl_data_t
-{
-    char* buffer;
-    size_t size;
-};
-
-static size_t _data_callback(void* ptr, size_t size, size_t nmemb, void* data);
-
-gboolean
-tinyurl_valid(char* url)
-{
-    return (g_str_has_prefix(url, "http://") || g_str_has_prefix(url, "https://"));
-}
-
-char*
-tinyurl_get(char* url)
-{
-    GString* full_url = g_string_new("http://tinyurl.com/api-create.php?url=");
-    g_string_append(full_url, url);
-
-    CURL* handle = curl_easy_init();
-    struct curl_data_t output;
-    output.buffer = NULL;
-    output.size = 0;
-
-    curl_easy_setopt(handle, CURLOPT_URL, full_url->str);
-    curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, _data_callback);
-    curl_easy_setopt(handle, CURLOPT_WRITEDATA, (void*)&output);
-
-    curl_easy_perform(handle);
-    curl_easy_cleanup(handle);
-
-    g_string_free(full_url, TRUE);
-
-    if (output.buffer) {
-        output.buffer[output.size++] = '\0';
-        return output.buffer;
-    } else {
-        return NULL;
-    }
-}
-
-static size_t
-_data_callback(void* ptr, size_t size, size_t nmemb, void* data)
-{
-    size_t realsize = size * nmemb;
-    struct curl_data_t* mem = (struct curl_data_t*)data;
-    mem->buffer = realloc(mem->buffer, mem->size + realsize + 1);
-
-    if (mem->buffer) {
-        memcpy(&(mem->buffer[mem->size]), ptr, realsize);
-        mem->size += realsize;
-        mem->buffer[mem->size] = 0;
-    }
-
-    return realsize;
-}
diff --git a/src/tools/tinyurl.h b/src/tools/tinyurl.h
deleted file mode 100644
index 67222cd0..00000000
--- a/src/tools/tinyurl.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * tinyurl.h
- * vim: expandtab:ts=4:sts=4:sw=4
- *
- * Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com>
- *
- * This file is part of Profanity.
- *
- * Profanity is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Profanity is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Profanity.  If not, see <https://www.gnu.org/licenses/>.
- *
- * In addition, as a special exception, the copyright holders give permission to
- * link the code of portions of this program with the OpenSSL library under
- * certain conditions as described in each individual source file, and
- * distribute linked combinations including the two.
- *
- * You must obey the GNU General Public License in all respects for all of the
- * code used other than OpenSSL. If you modify file(s) with this exception, you
- * may extend this exception to your version of the file(s), but you are not
- * obligated to do so. If you do not wish to do so, delete this exception
- * statement from your version. If you delete this exception statement from all
- * source files in the program, then also delete it here.
- *
- */
-
-#ifndef TOOLS_TINYURL_H
-#define TOOLS_TINYURL_H
-
-#include <glib.h>
-
-gboolean tinyurl_valid(char* url);
-char* tinyurl_get(char* url);
-
-#endif