summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--network/felinks/felinks.SlackBuild19
-rw-r--r--network/felinks/felinks.info8
-rw-r--r--network/felinks/patches/0001-gopher_html_links.patch37
-rw-r--r--network/felinks/patches/0002-gopher_index_queries.patch113
-rw-r--r--network/felinks/patches/0003-gopher_directory_links.patch26
-rw-r--r--network/felinks/patches/0005-gopher_newlines_tabs_entity-2.patch50
-rw-r--r--network/felinks/patches/0006-gopher-indexes_nocr.patch19
-rw-r--r--network/felinks/patches/0008-gopher-html-entities.patch47
8 files changed, 10 insertions, 309 deletions
diff --git a/network/felinks/felinks.SlackBuild b/network/felinks/felinks.SlackBuild
index a47562cb9c..2331689b7c 100644
--- a/network/felinks/felinks.SlackBuild
+++ b/network/felinks/felinks.SlackBuild
@@ -25,8 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=felinks
SRCNAM=elinks
-VERSION=${VERSION:-08da1d8}
-COMMIT=${COMMIT:-08da1d87eb74e082ca7aae8c81d2518a4415f3a7}
+VERSION=${VERSION:-0.15.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -73,9 +72,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$COMMIT
-tar xvf $CWD/$SRCNAM-$COMMIT.tar.?z
-cd $SRCNAM-$COMMIT
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -83,11 +82,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-for patch in $CWD/patches/*; do
- printf "\n%s\n" "Applying Patch $( basename $patch )"
- patch --verbose -p1 < $patch
-done
-
## System
[ "${FASTMEM:-no}" = "yes" ] && fastmem="--enable-fastmem"
[ "${DEBUG:-no}" = "yes" ] && debug="--enable-debug --disable-fastmem"
@@ -183,9 +177,8 @@ LDFLAGS="$SLKLDFLAGS" \
# Don't clobber the one supplied by glibc-i18n.
rm -f $PKG/usr/share/locale/locale.alias
-if [ "$DEBUG" = "no" ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+if [ "${DEBUG:-no}" = "no" ]; then
+ strip --strip-unneeded $PKG/usr/bin/$SRCNAM
fi
find $PKG/usr/man -type f -exec gzip -9 {} \;
diff --git a/network/felinks/felinks.info b/network/felinks/felinks.info
index 596eeb3146..fa158e9f8d 100644
--- a/network/felinks/felinks.info
+++ b/network/felinks/felinks.info
@@ -1,8 +1,8 @@
PRGNAM="felinks"
-VERSION="08da1d8"
-HOMEPAGE="https://github.com/rkd77/felinks"
-DOWNLOAD="https://github.com/rkd77/felinks/archive/08da1d87eb74e082ca7aae8c81d2518a4415f3a7/elinks-08da1d87eb74e082ca7aae8c81d2518a4415f3a7.tar.gz"
-MD5SUM="58032b24cc7fea37ca6afeffd15d4d54"
+VERSION="0.15.0"
+HOMEPAGE="https://github.com/rkd77/elinks"
+DOWNLOAD="https://github.com/rkd77elinks/archive/v0.15.0/elinks-0.15.0.tar.gz"
+MD5SUM="52028102283424664c2ac2bdd23e991f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/felinks/patches/0001-gopher_html_links.patch b/network/felinks/patches/0001-gopher_html_links.patch
deleted file mode 100644
index 38a2dd0b10..0000000000
--- a/network/felinks/patches/0001-gopher_html_links.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-################################################################
-# Fix for HTML links that contain URL:http://
-# dave@slackbuilds.org
-###############################################################
-diff -Naur a/src/protocol/gopher/gopher.c b/src/protocol/gopher/gopher.c
---- a/src/protocol/gopher/gopher.c 2013-12-18 15:38:57.000000000 +0000
-+++ b/src/protocol/gopher/gopher.c 2020-01-08 05:34:02.300498220 +0000
-@@ -277,6 +277,10 @@
- struct string command;
- enum gopher_entity entity = DEFAULT_GOPHER_ENTITY;
- unsigned char *selector = conn->uri->data;
-+ unsigned char const* URI = "hURI%3";
-+ unsigned char const* URL = "hURL%3";
-+ unsigned char const* CURI = "HURI%3";
-+ unsigned char const* CURL = "HURL%3";
- int selectorlen = conn->uri->datalen;
- struct gopher_entity_info *entity_info;
- size_t size;
-@@ -288,6 +292,18 @@
- selectorlen--;
- }
-
-+ if(strstr(selector, URL) != NULL || strstr(selector, URI) != NULL) {
-+ entity = GOPHER_HTML;
-+ selector++;
-+ selectorlen--;
-+ }
-+
-+ if(strstr(selector, CURL) != NULL || strstr(selector, CURI) != NULL) {
-+ entity = GOPHER_CHTML;
-+ selector++;
-+ selectorlen--;
-+ }
-+
- /* This is probably a hack. It serves as a work around when no entity is
- * available in the Gopher URI. Instead of segfaulting later the content
- * will be served as application/octet-stream. However, it could
diff --git a/network/felinks/patches/0002-gopher_index_queries.patch b/network/felinks/patches/0002-gopher_index_queries.patch
deleted file mode 100644
index 662fd13a7f..0000000000
--- a/network/felinks/patches/0002-gopher_index_queries.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-#######################################################################
-# Fix for type 7 entities.
-# dave@slackbuilds.org
-#######################################################################
-diff -Naur '--exclude=.git' bb/src/protocol/gopher/gopher.c cc/src/protocol/gopher/gopher.c
---- bb/src/protocol/gopher/gopher.c 2020-01-13 22:35:13.663935305 +0000
-+++ cc/src/protocol/gopher/gopher.c 2020-01-13 23:16:00.053003768 +0000
-@@ -197,7 +197,7 @@
- command->length = strlen(command->source);
- }
-
--static struct connection_state init_gopher_index_cache_entry(struct connection *conn);
-+/* static struct connection_state init_gopher_index_cache_entry(struct connection *conn); */
-
- static struct connection_state
- add_gopher_command(struct connection *conn, struct string *command,
-@@ -205,7 +205,7 @@
- unsigned char *selector, int selectorlen)
- {
- unsigned char *query;
-- int querylen;
-+ int querylen = 0;
-
- if (!init_string(command))
- return connection_state(S_OUT_OF_MEM);
-@@ -218,13 +218,14 @@
- /* Exclude '?' */
- if (query) selectorlen -= 1;
- query = NULL;
-- querylen = 0;
-- } else {
-- query += 1;
-+ } else if (entity == GOPHER_INDEX) {
-+ /* fix query size to not include the search= part */
-+ query += 8;
- querylen = selector + selectorlen - query;
- /* Exclude '?' */
-- selectorlen -= querylen + 1;
-- if (querylen >= 7 && !c_strncasecmp(query, "search=", 7)) {
-+ /* fix selector length to fit with query */
-+ selectorlen -= querylen + 8;
-+ if (querylen >= 7 && !c_strncasecmp(query, "submit=", 7)) {
- query += 7;
- querylen -= 7;
- }
-@@ -233,9 +234,11 @@
- switch (entity) {
- case GOPHER_INDEX:
- /* No search required? */
-+ /* Don't display the form page */
- if (!query) {
- done_string(command);
-- return init_gopher_index_cache_entry(conn);
-+ add_uri_decoded(command, selector, selectorlen, 0);
-+ break;
- }
-
- add_uri_decoded(command, selector, selectorlen, 0);
-@@ -371,13 +374,14 @@
- add_gopher_search_field(struct string *buffer, const unsigned char *text,
- const unsigned char *addr)
- {
-+ /* Not *every* query is a search! */
- add_format_to_string(buffer,
- "<form action=\"%s\">"
- "<table>"
- "<td> </td>"
- "<td>%s:</td>"
-- "<td><input maxlength=\"256\" name=\"search\" value=\"\"></td>"
-- "<td><input type=submit value=\"Search\"></td>"
-+ "<td><input maxlength=\"256\" name=\"submit\" value=\"\"></td>"
-+ "<td><input type=submit value=\"Submit\"></td>"
- "</table>"
- "</form>",
- addr, text);
-@@ -662,6 +666,7 @@
- }
-
- /* Display a Gopher Index document. */
-+/* Use the page that the gopher site sends us
- static struct connection_state
- init_gopher_index_cache_entry(struct connection *conn)
- {
-@@ -674,9 +679,9 @@
-
- where = get_uri_string(conn->uri, URI_PUBLIC);
-
-- /* TODO: Use different function when using UTF-8
-+ TODO: Use different function when using UTF-8
- * in terminal (decode_uri_for_display replaces
-- * bytes of UTF-8 characters width '*'). */
-+ * bytes of UTF-8 characters width '*'). *
- if (where) decode_uri_for_display(where);
-
- add_format_to_string(&buffer,
-@@ -695,7 +700,7 @@
-
- mem_free_if(where);
-
-- /* FIXME: I think this needs a form or something */
-+ * FIXME: I think this needs a form or something *
-
- add_fragment(conn->cached, conn->from, buffer.source, buffer.length);
- conn->from += buffer.length;
-@@ -707,7 +712,7 @@
- ? connection_state(S_OK)
- : connection_state(S_OUT_OF_MEM);
- }
--
-+*/
-
- static void
- read_gopher_response_data(struct socket *socket, struct read_buffer *rb)
diff --git a/network/felinks/patches/0003-gopher_directory_links.patch b/network/felinks/patches/0003-gopher_directory_links.patch
deleted file mode 100644
index 15a89fac2f..0000000000
--- a/network/felinks/patches/0003-gopher_directory_links.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-#######################################################################
-# Fix remote directory links.
-# dave@slackbuilds.org
-#######################################################################
-diff -Naur -x .git bb/src/protocol/gopher/gopher.c cc/src/protocol/gopher/gopher.c
---- bb/src/protocol/gopher/gopher.c 2020-01-13 23:22:18.918292198 +0000
-+++ cc/src/protocol/gopher/gopher.c 2020-01-13 23:21:00.631960039 +0000
-@@ -321,6 +321,18 @@
- selectorlen++;
- }
-
-+ if (entity_info->type == '1') {
-+ if (strchr(selector, '1') == (char *) selector) {
-+ selector++;
-+ selectorlen--;
-+ }
-+ else {
-+ if ((char *) selector == "/1") {
-+ selectorlen--;
-+ }
-+ }
-+ }
-+
- state = add_gopher_command(conn, &command, entity, selector, selectorlen);
- if (!is_in_state(state, S_CONN))
- return state;
diff --git a/network/felinks/patches/0005-gopher_newlines_tabs_entity-2.patch b/network/felinks/patches/0005-gopher_newlines_tabs_entity-2.patch
deleted file mode 100644
index 2885a67e76..0000000000
--- a/network/felinks/patches/0005-gopher_newlines_tabs_entity-2.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff -Naur a/src/protocol/gopher/gopher.c b/src/protocol/gopher/gopher.c
---- a/src/protocol/gopher/gopher.c 2020-01-31 16:50:36.000000000 +0000
-+++ b/src/protocol/gopher/gopher.c 2020-05-14 06:21:44.523952135 +0000
-@@ -283,7 +283,7 @@
-
- /* Get entity type, and selector string. */
- /* Pick up gopher_entity */
-- if (selectorlen > 1 && selector[1] == '/') {
-+ if (selectorlen > 1) {
- entity = *selector++;
- selectorlen--;
- }
-@@ -308,6 +308,18 @@
- selectorlen--;
- }
-
-+ if (entity_info->type == '1') {
-+ if (strchr(selector, '1') == (char *) selector) {
-+ selector++;
-+ selectorlen--;
-+ }
-+ else {
-+ if ((char *) selector == "/1") {
-+ selectorlen--;
-+ }
-+ }
-+ }
-+
- state = add_gopher_command(conn, &command, entity, selector, selectorlen);
- if (!is_in_state(state, S_CONN))
- return state;
-@@ -548,7 +560,8 @@
-
- } else if (address.length > 0
- && strlcmp(address.source, address.length - 1,
-- "gopher://error.host:1/", -1)) {
-+ "gopher://error.host:1/", -1)
-+ && selector) {
- add_gopher_link(buffer, name, address.source);
-
- } else {
-@@ -571,7 +584,7 @@
- if (data[0] == ASCII_CR && data[1] == ASCII_LF)
- return data + 2;
-
-- if (data[0] == ASCII_LF)
-+ if (data[0] == ASCII_CR || data[0] == ASCII_LF)
- return data + 1;
- }
-
diff --git a/network/felinks/patches/0006-gopher-indexes_nocr.patch b/network/felinks/patches/0006-gopher-indexes_nocr.patch
deleted file mode 100644
index 9e4a441db6..0000000000
--- a/network/felinks/patches/0006-gopher-indexes_nocr.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-#######################################################################
-# Fix index listings with only LF and no CRs.
-# dave@slackbuilds.org
-#######################################################################
-diff -Naur '--exclude=.git' bb/src/protocol/gopher/gopher.c cc/src/protocol/gopher/gopher.c
---- bb/src/protocol/gopher/gopher.c 2020-01-14 06:42:11.030536586 +0000
-+++ cc/src/protocol/gopher/gopher.c 2020-01-14 06:42:26.710000886 +0000
-@@ -757,6 +757,11 @@
- switch (gopher->entity->type) {
- case GOPHER_DIRECTORY:
- case GOPHER_INDEX:
-+ /* Lines with no carriage returns */
-+ if (strchr(rb->data, ASCII_CR) == NULL) {
-+ strncat(rb->data, "\r\n", 2);
-+ rb->length += 3;
-+ }
- state = read_gopher_directory_data(conn, rb);
- break;
-
diff --git a/network/felinks/patches/0008-gopher-html-entities.patch b/network/felinks/patches/0008-gopher-html-entities.patch
deleted file mode 100644
index 750d1a49de..0000000000
--- a/network/felinks/patches/0008-gopher-html-entities.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-###################################################################
-# Encode < > to HTML.
-###################################################################
-diff -Naur '--exclude=.git' bb/src/protocol/gopher/gopher.c cc/src/protocol/gopher/gopher.c
---- bb/src/protocol/gopher/gopher.c 2020-01-14 03:26:41.791778387 +0000
-+++ cc/src/protocol/gopher/gopher.c 2020-01-14 06:19:56.964025440 +0000
-@@ -620,6 +620,25 @@
- return line[0] == '.' && !line[1] ? NULL : line;
- }
-
-+/* substring replacement */
-+static void
-+str_replace(char * in_string, char * s_string, char * r_string)
-+{
-+ /* max == replace all characters */
-+ char temp[strlen(in_string) * (strlen(r_string) - strlen(s_string)) + 1];
-+ char * pos;
-+
-+ if (!(pos = strstr(in_string, s_string)))
-+ return;
-+
-+ strncpy(temp, in_string, pos - in_string);
-+ temp[pos - in_string] = 0;
-+ sprintf(temp + (pos - in_string), "%s%s", r_string, pos + 1);
-+ in_string[0] = 0;
-+ strcpy(in_string, temp);
-+ return str_replace(in_string, s_string, r_string);
-+}
-+
- /* Parse a Gopher Menu document */
- static struct connection_state
- read_gopher_directory_data(struct connection *conn, struct read_buffer *rb)
-@@ -639,6 +658,14 @@
- return connection_state(S_OUT_OF_MEM);
- }
-
-+ /* Lines with characters that need to be converted to html */
-+ if (strstr(rb->data, "<")) {
-+ str_replace(rb->data, "<", "&lt;");
-+ }
-+ if (strstr(rb->data, ">")) {
-+ str_replace(rb->data, ">", "&gt;");
-+ }
-+
- while ((end = get_gopher_line_end(rb->data, rb->length))) {
- unsigned char *line = check_gopher_last_line(rb->data, end);
-