mirror of
https://github.com/weechat/weechat.git
synced 2026-06-14 23:24:47 +02:00
Compare commits
47 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 209ffbe50e | |||
| 0c9028b47c | |||
| fdcab27513 | |||
| 96dc934241 | |||
| 7f96c31e1b | |||
| d1c6d170ac | |||
| d0fe9508a5 | |||
| 244ba50841 | |||
| ec31f43d85 | |||
| 2e10264e96 | |||
| ccfe1f2263 | |||
| 3ece5bd8a9 | |||
| 4a63d88895 | |||
| 9a0bd7c753 | |||
| d8c954472c | |||
| 64eee892b2 | |||
| d1655945cd | |||
| d2f78e2248 | |||
| b614a5c5db | |||
| 35129a1cae | |||
| 2f6b462c3c | |||
| 9202213274 | |||
| 822a94c184 | |||
| e0f096abe6 | |||
| bff143dcf4 | |||
| e660233325 | |||
| 129860fd52 | |||
| 3c65bc6831 | |||
| db81c07e1f | |||
| 30ad9ca62d | |||
| c7f5cd462f | |||
| bcba2d4d7c | |||
| e3a69e92e5 | |||
| f43efe5a65 | |||
| 8da3884afc | |||
| 3778ef0636 | |||
| c52d630f82 | |||
| 356028ee87 | |||
| 9dd85507d0 | |||
| c6df2e7b8e | |||
| e6857871f0 | |||
| d1f2d54a1e | |||
| 0ce0fa9f1f | |||
| 7526776f4e | |||
| 958f39cb95 | |||
| 189eb5dc40 | |||
| 9ee0955d6b |
+1
-1
@@ -5,4 +5,4 @@ debian-devel export-ignore
|
||||
debian-stable export-ignore
|
||||
weechat.spec export-ignore
|
||||
.mailmap export-ignore
|
||||
tools/build-debian.sh export-ignore
|
||||
tools/build_debian.sh export-ignore
|
||||
|
||||
+11
-17
@@ -5,7 +5,7 @@ on:
|
||||
- pull_request
|
||||
|
||||
env:
|
||||
WEECHAT_DEPENDENCIES: devscripts equivs python3-pip autopoint cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-3.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev libzstd-dev zlib1g-dev curl libcpputest-dev php8.0-dev libphp8.0-embed libargon2-dev libsodium-dev pylint python3-bandit asciidoctor ruby-pygments.rb
|
||||
WEECHAT_DEPENDENCIES: devscripts equivs python3-pip autopoint cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-3.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev libzstd-dev zlib1g-dev curl libcpputest-dev php-dev libphp-embed libargon2-dev libsodium-dev flake8 pylint python3-bandit asciidoctor ruby-pygments.rb shellcheck
|
||||
|
||||
jobs:
|
||||
|
||||
@@ -33,33 +33,29 @@ jobs:
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
|
||||
sudo -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Check gettext files
|
||||
run: msgcheck po/*.po
|
||||
|
||||
- name: Check Python scripts
|
||||
run: |
|
||||
pylint --additional-builtins=_ doc/docgen.py
|
||||
pylint doc/python_stub.py
|
||||
pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
bandit doc/docgen.py doc/python_stub.py
|
||||
bandit tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
- name: Check shell and Python scripts
|
||||
run: ./tools/check_scripts.sh
|
||||
|
||||
- name: Check Python stub file
|
||||
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
|
||||
|
||||
- name: Check Curl symbols
|
||||
run: curl --silent --show-error --fail --retry 10 https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions | ./tools/check_curl_symbols.py
|
||||
|
||||
- name: Build and run tests
|
||||
env:
|
||||
CC: ${{ matrix.config.cc }}
|
||||
CXX: ${{ matrix.config.cxx }}
|
||||
BUILDTOOL: ${{ matrix.config.tool }}
|
||||
BUILDARGS: ${{ matrix.config.args }}
|
||||
run: ./tools/build-test.sh
|
||||
run: ./tools/build_test.sh
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
@@ -104,7 +100,7 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew update
|
||||
brew install asciidoctor lua ruby
|
||||
brew install asciidoctor guile lua ruby
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
@@ -143,16 +139,14 @@ jobs:
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }} php-dev
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
|
||||
|
||||
- name: Test Debian patches
|
||||
run: ./tools/build-debian.sh test-patches
|
||||
run: ./tools/build_debian.sh test-patches
|
||||
|
||||
- name: Build Debian packages
|
||||
run: ./tools/build-debian.sh devel ubuntu/jammy
|
||||
run: ./tools/build_debian.sh devel ubuntu/jammy
|
||||
|
||||
- name: Install Debian packages
|
||||
run: sudo dpkg -i ../weechat-devel*.deb
|
||||
|
||||
+7
-3
@@ -184,9 +184,10 @@ if(ENABLE_NLS)
|
||||
endif()
|
||||
|
||||
# Check for libgcrypt
|
||||
find_package(GCRYPT REQUIRED)
|
||||
pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt)
|
||||
add_definitions(-DHAVE_GCRYPT)
|
||||
list(APPEND EXTRA_LIBS ${GCRYPT_LDFLAGS})
|
||||
include_directories(${LIBGCRYPT_INCLUDE_DIRS})
|
||||
list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS})
|
||||
|
||||
# Check for GnuTLS
|
||||
find_package(GnuTLS REQUIRED)
|
||||
@@ -241,13 +242,16 @@ if(ENABLE_TESTS)
|
||||
else()
|
||||
message(SEND_ERROR "CppUTest not found")
|
||||
endif()
|
||||
else()
|
||||
enable_testing()
|
||||
add_test(NAME notests COMMAND true)
|
||||
endif()
|
||||
|
||||
configure_file(config.h.cmake config.h @ONLY)
|
||||
|
||||
# set the git version in "config-git.h"
|
||||
add_custom_target(version_git ALL
|
||||
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/git-version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
|
||||
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/set_git_version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
)
|
||||
|
||||
|
||||
+36
-12
@@ -15,8 +15,26 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
|
||||
(file _ReleaseNotes.adoc_ in sources).
|
||||
|
||||
|
||||
[[v3.8.1]]
|
||||
== Version 3.8.1 (under dev)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: fix buffer overflow in function eval_string_range_chars
|
||||
* core: fix buffer overflow in function eval_string_base_encode
|
||||
* core: fix integer overflow in function util_version_number
|
||||
* core: fix integer overflow in base32 encoding/decoding
|
||||
* core: fix integer overflow with decimal numbers in calculation of expression
|
||||
* core, plugins: fix integer overflow in loops (issue #2178)
|
||||
* core: fix crash in case of NULL message sent to function gui_chat_printf_y_date_tags (issue #1883)
|
||||
|
||||
Build::
|
||||
|
||||
* core: fix detection of libgcrypt ≥ 1.11 (debian #1071960)
|
||||
* ruby: add detection of Ruby 3.3
|
||||
|
||||
[[v3.8]]
|
||||
== Version 3.8 (under dev)
|
||||
== Version 3.8 (2023-01-08)
|
||||
|
||||
New features::
|
||||
|
||||
@@ -31,6 +49,7 @@ New features::
|
||||
* core: add signals "buffer_user_input_xxx" and "buffer_user_closing_xxx" for buffers created with `/buffer add` (issue #1848)
|
||||
* core: add identifier in buffer lines (issue #901)
|
||||
* core: add option `unicode` in command `/debug`
|
||||
* api: add Curl options for versions 7.64.0 to 7.87.0
|
||||
* api: add functions string_strcmp and string_strncmp
|
||||
* api: rename char comparison functions "utf8_char*" to "string_char*"
|
||||
* api: return arithmetic difference between chars in functions string_charcmp, string_charcasecmp, string_charcasecmp_range, string_strcasecmp, string_strcasecmp_range, string_strncasecmp, string_strncasecmp_range, string_strcmp_ignore_chars
|
||||
@@ -50,18 +69,23 @@ Bug fixes::
|
||||
* api: send NULL values to config section callbacks in scripting API (issue #1843)
|
||||
* api: fix function string_cut when there are non printable chars in suffix
|
||||
* api: do not expect any return value in callbacks "callback_change" and "callback_delete" of function config_new_option (scripting API)
|
||||
* irc: properly rename private buffer on nick changes or private message when new nick is the same with different case
|
||||
* irc: properly rename private buffer on nick changes or privmsg/notice message when new nick is the same with different case
|
||||
* irc: do not join channels in server autojoin option after reconnection to the server (issue #560, bug #21529)
|
||||
* irc: escape backslashes in raw buffer (issue #1838)
|
||||
* trigger: fix variables sent to focus callback (issue #1858)
|
||||
|
||||
Tests::
|
||||
|
||||
* ci: remove use of repository ppa:ondrej/php, use standard PHP version (8.1) from Ubuntu 22.04
|
||||
* core: add script check_scripts.sh
|
||||
* core: add script check_curl_symbols.py
|
||||
* gui: add tests on input functions
|
||||
* scripts: add tests on config functions
|
||||
|
||||
Build::
|
||||
|
||||
* core: add CMake test called "notests" when tests are not compiled
|
||||
* core: rename scripts: build-debian.sh to build_debian.sh, build-test.sh to build_test.sh, git-version.sh to set_git_version.sh
|
||||
* debian: change dependency guile-2.2-dev to guile-3.0-dev
|
||||
* python: remove support of Python 2.x
|
||||
* ruby: add detection of Ruby 3.2
|
||||
@@ -132,8 +156,8 @@ Bug fixes::
|
||||
|
||||
Tests::
|
||||
|
||||
* core: switch from Ubuntu 20.04 to 22.04 in CI
|
||||
* core: remove macOS 10.15, add macOS 12 in CI
|
||||
* ci: switch from Ubuntu 20.04 to 22.04
|
||||
* ci: remove macOS 10.15, add macOS 12
|
||||
* core: add tests on filter functions
|
||||
* scripts: add tests on hdata functions
|
||||
* scripts: fix run of Guile test script
|
||||
@@ -203,8 +227,8 @@ Bug fixes::
|
||||
|
||||
Tests::
|
||||
|
||||
* ci: add build of Debian packages
|
||||
* core: add tests on GUI chat functions
|
||||
* core: add build of Debian packages in CI
|
||||
|
||||
Build::
|
||||
|
||||
@@ -253,8 +277,8 @@ Documentation::
|
||||
|
||||
Tests::
|
||||
|
||||
* core: add build with CMake and Ninja in CI
|
||||
* core: add build on macOS 11 in CI
|
||||
* ci: add build with CMake and Ninja
|
||||
* ci: add build on macOS 11
|
||||
|
||||
Build::
|
||||
|
||||
@@ -307,8 +331,8 @@ Documentation::
|
||||
|
||||
Tests::
|
||||
|
||||
* core: switch to PHP 8.0 in CI
|
||||
* core: add build on macOS in CI
|
||||
* ci: switch to PHP 8.0
|
||||
* ci: add build on macOS
|
||||
|
||||
Build::
|
||||
|
||||
@@ -370,7 +394,7 @@ Bug fixes::
|
||||
|
||||
Tests::
|
||||
|
||||
* core: switch from Ubuntu 18.04 to 20.04 in CI
|
||||
* ci: switch from Ubuntu 18.04 to 20.04
|
||||
* trigger: add tests on main trigger functions
|
||||
|
||||
Build::
|
||||
@@ -531,8 +555,8 @@ Documentation::
|
||||
|
||||
Tests::
|
||||
|
||||
* core: add CI with GitHub Actions, move codecov.io upload to GitHub Actions
|
||||
* core: switch to Ubuntu Bionic on Travis CI, use pylint3 to lint Python scripts
|
||||
* ci: add CI with GitHub Actions, move codecov.io upload to GitHub Actions
|
||||
* ci: switch to Ubuntu Bionic on Travis CI, use pylint3 to lint Python scripts
|
||||
* core: run tests on plugins only if the plugins are enabled and compiled
|
||||
* irc: add tests on IRC color and channel functions
|
||||
|
||||
|
||||
+3
-3
@@ -23,7 +23,7 @@
|
||||
# (if needed, and only for a devel/rc version).
|
||||
BUILT_SOURCES = build-config-git.h
|
||||
build-config-git.h:
|
||||
-$(abs_top_srcdir)/tools/git-version.sh "$(abs_top_srcdir)" "$(VERSION)" config-git.h
|
||||
-$(abs_top_srcdir)/tools/set_git_version.sh "$(abs_top_srcdir)" "$(VERSION)" config-git.h
|
||||
|
||||
if TESTS
|
||||
tests_dir = tests
|
||||
@@ -60,8 +60,8 @@ EXTRA_DIST = AUTHORS.adoc \
|
||||
cmake/cmake_uninstall.cmake.in \
|
||||
po/CMakeLists.txt \
|
||||
po/srcfiles.cmake \
|
||||
tools/build-test.sh \
|
||||
tools/git-version.sh \
|
||||
tools/build_test.sh \
|
||||
tools/set_git_version.sh \
|
||||
tools/makedist.sh \
|
||||
version.sh \
|
||||
weechat.desktop \
|
||||
|
||||
+6
-1
@@ -18,7 +18,7 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
|
||||
|
||||
|
||||
[[v3.8]]
|
||||
== Version 3.8 (under dev)
|
||||
== Version 3.8 (2023-01-08)
|
||||
|
||||
[[v3.8_command_input_options]]
|
||||
=== Move of options out of command /input
|
||||
@@ -76,6 +76,11 @@ compared UTF-8 char in string2 from the last compared UTF-8 char in string1:
|
||||
* string_strncasecmp_range
|
||||
* string_strcmp_ignore_chars
|
||||
|
||||
In addition, the case conversion has been extended, now in addition to range
|
||||
A-Z, all chars that have a lower case version are handled. +
|
||||
That means for example the case insensitive comparison of "é" and "É" is 0
|
||||
(chars are considered equal).
|
||||
|
||||
Example with WeeChat 3.8:
|
||||
|
||||
[source,c]
|
||||
|
||||
+11
-11
@@ -41,29 +41,29 @@ err ()
|
||||
|
||||
run ()
|
||||
{
|
||||
printf "Running \"%s\"..." "$@"
|
||||
if eval "$@" >"$AUTOGEN_LOG" 2>&1 ; then
|
||||
echo " OK"
|
||||
printf "Running \"%s\"... " "$*"
|
||||
if "$@" >"$AUTOGEN_LOG" 2>&1 ; then
|
||||
echo "OK"
|
||||
else
|
||||
echo " FAILED"
|
||||
echo "FAILED"
|
||||
err
|
||||
fi
|
||||
}
|
||||
|
||||
# remove autotools stuff
|
||||
run "rm -f config.h.in"
|
||||
run "rm -f aclocal.m4 configure config.log config.status"
|
||||
run "rm -rf autom4te*.cache"
|
||||
run rm -f config.h.in
|
||||
run rm -f aclocal.m4 configure config.log config.status
|
||||
run rm -rf "autom4te*.cache"
|
||||
|
||||
# remove libtool stuff
|
||||
run "rm -f libtool"
|
||||
run rm -f libtool
|
||||
|
||||
# remove gettext stuff
|
||||
run "rm -f ABOUT-NLS"
|
||||
run "rm -rf intl"
|
||||
run rm -f ABOUT-NLS
|
||||
run rm -rf intl
|
||||
|
||||
# execute autoreconf cmds
|
||||
run "autoreconf -vi"
|
||||
run autoreconf -vi
|
||||
|
||||
# ending
|
||||
rm -f "$AUTOGEN_LOG"
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
# WeeChat 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.
|
||||
#
|
||||
# WeeChat 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 WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# - Find Gcrypt
|
||||
# This module finds if libgcrypt is installed and determines where
|
||||
# the include files and libraries are.
|
||||
#
|
||||
# This code sets the following variables:
|
||||
#
|
||||
# GCRYPT_CFLAGS = cflags to use to compile
|
||||
# GCRYPT_LDFLAGS = ldflags to use to compile
|
||||
#
|
||||
|
||||
find_program(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
|
||||
|
||||
set(GCRYPT_LDFLAGS)
|
||||
set(GCRYPT_CFLAGS)
|
||||
|
||||
if(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
|
||||
if(NOT DEFINED ${GCRYPT_CFLAGS})
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(GCRYPT REQUIRED_VARS GCRYPT_LDFLAGS GCRYPT_CFLAGS)
|
||||
|
||||
if(GCRYPT_FOUND)
|
||||
mark_as_advanced(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
|
||||
endif()
|
||||
+2
-1
@@ -29,6 +29,7 @@ endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
find_program(PHP_CONFIG_EXECUTABLE NAMES
|
||||
php-config8.2 php-config82
|
||||
php-config8.1 php-config81
|
||||
php-config8.0 php-config80
|
||||
php-config8
|
||||
@@ -47,7 +48,7 @@ if(NOT PHP_FOUND)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(${PHP_VERSION} MATCHES "^[78]")
|
||||
find_library(PHP_LIB
|
||||
NAMES php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
|
||||
NAMES php8.2 php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
|
||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||
)
|
||||
if(PHP_LIB)
|
||||
|
||||
@@ -37,7 +37,7 @@ if(PKG_CONFIG_FOUND)
|
||||
# set specific search path for macOS
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
|
||||
endif()
|
||||
pkg_search_module(RUBY ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
pkg_search_module(RUBY ruby-3.3 ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
|
||||
+1
-1
@@ -828,7 +828,7 @@ if test "x$enable_php" = "xyes" ; then
|
||||
|
||||
PHP_CFLAGS=""
|
||||
PHP_LFLAGS=""
|
||||
PHP_VERSIONS="8.1 81 8.0 80 8 7.4 74 7.3 73 7.2 72 7.1 71 7.0 70 7 $php_suffix"
|
||||
PHP_VERSIONS="8.2 82 8.1 81 8.0 80 8 7.4 74 7.3 73 7.2 72 7.1 71 7.0 70 7 $php_suffix"
|
||||
|
||||
if test -n "$php_inc"; then
|
||||
CFLAGS="$CFLAGS -I$php_inc"
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. guile (4070)
|
||||
. javascript (4060)
|
||||
. lua (4050)
|
||||
. perl (4040)
|
||||
. php (4030)
|
||||
. python (4020)
|
||||
. ruby (4010)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
|
||||
@@ -48,10 +48,6 @@
|
||||
|
||||
| address_scope | long |
|
||||
|
||||
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
|
||||
|
||||
| noproxy | string |
|
||||
|
||||
| socks5_gssapi_nec | long |
|
||||
@@ -82,15 +78,19 @@
|
||||
|
||||
| doh_url | string |
|
||||
|
||||
| protocols_str | string |
|
||||
|
||||
| redir_protocols_str | string |
|
||||
|
||||
| netrc | long | ignored, optional, required
|
||||
|
||||
| userpwd | string |
|
||||
|
||||
| proxyuserpwd | string |
|
||||
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
|
||||
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer, aws_sigv4
|
||||
|
||||
| netrc_file | string |
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
| tlsauth_password | string |
|
||||
|
||||
| sasl_authzid | string |
|
||||
|
||||
| sasl_ir | long |
|
||||
|
||||
| xoauth2_bearer | string |
|
||||
@@ -120,8 +122,6 @@
|
||||
|
||||
| followlocation | long |
|
||||
|
||||
| put | long |
|
||||
|
||||
| post | long |
|
||||
|
||||
| postfields | string |
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
| cookiejar | string |
|
||||
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
|
||||
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge, 3
|
||||
|
||||
| cookiesession | long |
|
||||
|
||||
@@ -182,12 +182,20 @@
|
||||
|
||||
| request_target | string |
|
||||
|
||||
| http09_allowed | long |
|
||||
|
||||
| hsts | string |
|
||||
|
||||
| hsts_ctrl | mask | enable, readonlyfile
|
||||
|
||||
| mail_from | string |
|
||||
|
||||
| mail_rcpt | list |
|
||||
|
||||
| mail_auth | string |
|
||||
|
||||
| mail_rcpt_alllowfails | long |
|
||||
|
||||
| tftp_blksize | long |
|
||||
|
||||
| tftp_no_options | long |
|
||||
@@ -206,8 +214,6 @@
|
||||
|
||||
| ftp_create_missing_dirs | long |
|
||||
|
||||
| ftp_response_timeout | long |
|
||||
|
||||
| ftpsslauth | long | default, ssl, tls
|
||||
|
||||
| ftp_account | string |
|
||||
@@ -238,6 +244,8 @@
|
||||
|
||||
| rtsp_server_cseq | long |
|
||||
|
||||
| aws_sigv4 | string |
|
||||
|
||||
| crlf | long |
|
||||
|
||||
| range | string |
|
||||
@@ -274,6 +282,8 @@
|
||||
|
||||
| upload_buffersize | long |
|
||||
|
||||
| mime_options | mask | formescape
|
||||
|
||||
| timeout | long |
|
||||
|
||||
| low_speed_limit | long |
|
||||
@@ -298,6 +308,8 @@
|
||||
|
||||
| connecttimeout_ms | long |
|
||||
|
||||
| maxage_conn | long |
|
||||
|
||||
| maxconnects | long |
|
||||
|
||||
| use_ssl | long | none, try, control, all
|
||||
@@ -322,6 +334,8 @@
|
||||
|
||||
| upkeep_interval_ms | long |
|
||||
|
||||
| maxlifetime_conn | long |
|
||||
|
||||
| sslcert | string |
|
||||
|
||||
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
|
||||
@@ -330,10 +344,6 @@
|
||||
|
||||
| cainfo | string |
|
||||
|
||||
| random_file | string |
|
||||
|
||||
| egdsocket | string |
|
||||
|
||||
| ssl_verifyhost | long |
|
||||
|
||||
| ssl_cipher_list | string |
|
||||
@@ -364,12 +374,10 @@
|
||||
|
||||
| gssapi_delegation | long | none, policy_flag, flag
|
||||
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| ssl_enable_alpn | long |
|
||||
|
||||
| ssl_enable_npn | long |
|
||||
|
||||
| pinnedpublickey | string |
|
||||
|
||||
| ssl_verifystatus | long |
|
||||
@@ -398,7 +406,7 @@
|
||||
|
||||
| proxy_ssl_cipher_list | list |
|
||||
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
|
||||
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend, no_partialchain, revoke_best_effort, native_ca, auto_client_cert
|
||||
|
||||
| proxy_ssl_verifyhost | long |
|
||||
|
||||
@@ -414,6 +422,18 @@
|
||||
|
||||
| proxy_tls13_ciphers | list |
|
||||
|
||||
| proxy_issuercert | string |
|
||||
|
||||
| ssl_ec_curves | string |
|
||||
|
||||
| doh_ssl_verifyhost | long |
|
||||
|
||||
| doh_ssl_verifypeer | long |
|
||||
|
||||
| doh_ssl_verifystatus | long |
|
||||
|
||||
| ca_cache_timeout | long |
|
||||
|
||||
| ssh_auth_types | mask | none, policy_flag, flag
|
||||
|
||||
| ssh_public_keyfile | string |
|
||||
@@ -426,11 +446,17 @@
|
||||
|
||||
| ssh_compression | long |
|
||||
|
||||
| ssh_host_public_key_sha256 | string |
|
||||
|
||||
| telnetoptions | list |
|
||||
|
||||
| ws_options | mask | binary, close, cont, offset, ping, pong, raw_mode, text
|
||||
|
||||
| new_file_perms | long |
|
||||
|
||||
| new_directory_perms | long |
|
||||
|
||||
| telnetoptions | list |
|
||||
| quick_exit | long |
|
||||
|
||||
|===
|
||||
// end::url_options[]
|
||||
|
||||
@@ -22,7 +22,7 @@ msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2022-12-29 11:51+0100\n"
|
||||
"PO-Revision-Date: 2022-10-15 22:51+0200\n"
|
||||
"PO-Revision-Date: 2024-09-08 09:08+0200\n"
|
||||
"Last-Translator: Ondřej Súkup <mimi.vx@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: cs\n"
|
||||
@@ -144,7 +144,7 @@ msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "End of command '%s', timeout reached (%.1fs)"
|
||||
msgstr "Konec příkazu '%s', vypršel časový limit (%.lfs)"
|
||||
msgstr "Konec příkazu '%s', vypršel časový limit (%.1fs)"
|
||||
|
||||
#, c-format
|
||||
msgid "System clock skew detected (%+ld seconds), reinitializing all timers"
|
||||
|
||||
@@ -269,6 +269,7 @@ hook_line_add_to_infolist (struct t_infolist_item *item,
|
||||
void
|
||||
hook_line_print_log (struct t_hook *hook)
|
||||
{
|
||||
char **ptr_tag;
|
||||
int i, j;
|
||||
|
||||
if (!hook || !hook->hook_data)
|
||||
@@ -290,12 +291,10 @@ hook_line_print_log (struct t_hook *hook)
|
||||
{
|
||||
for (i = 0; i < HOOK_LINE(hook, tags_count); i++)
|
||||
{
|
||||
for (j = 0; HOOK_LINE(hook, tags_array)[i][j]; j++)
|
||||
for (ptr_tag = HOOK_LINE(hook, tags_array)[i], j = 0; *ptr_tag;
|
||||
ptr_tag++, j++)
|
||||
{
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'",
|
||||
i,
|
||||
j,
|
||||
HOOK_LINE(hook, tags_array)[i][j]);
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'", i, j, *ptr_tag);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -249,6 +249,7 @@ hook_print_add_to_infolist (struct t_infolist_item *item,
|
||||
void
|
||||
hook_print_print_log (struct t_hook *hook)
|
||||
{
|
||||
char **ptr_tag;
|
||||
int i, j;
|
||||
|
||||
if (!hook || !hook->hook_data)
|
||||
@@ -263,12 +264,10 @@ hook_print_print_log (struct t_hook *hook)
|
||||
{
|
||||
for (i = 0; i < HOOK_PRINT(hook, tags_count); i++)
|
||||
{
|
||||
for (j = 0; HOOK_PRINT(hook, tags_array)[i][j]; j++)
|
||||
for (ptr_tag = HOOK_PRINT(hook, tags_array)[i], j = 0; *ptr_tag;
|
||||
ptr_tag++, j++)
|
||||
{
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'",
|
||||
i,
|
||||
j,
|
||||
HOOK_PRINT(hook, tags_array)[i][j]);
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'", i, j, *ptr_tag);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -213,7 +213,7 @@ hook_process (struct t_weechat_plugin *plugin,
|
||||
void
|
||||
hook_process_child (struct t_hook *hook_process)
|
||||
{
|
||||
char **exec_args, *arg0, str_arg[64];
|
||||
char **exec_args, *arg0, str_arg[64], **ptr_exec_arg;
|
||||
const char *ptr_url, *ptr_arg;
|
||||
int rc, i, num_args;
|
||||
FILE *f;
|
||||
@@ -353,9 +353,10 @@ hook_process_child (struct t_hook *hook_process)
|
||||
{
|
||||
log_printf ("hook_process, command='%s'",
|
||||
HOOK_PROCESS(hook_process, command));
|
||||
for (i = 0; exec_args[i]; i++)
|
||||
for (ptr_exec_arg = exec_args, i = 0; *ptr_exec_arg;
|
||||
ptr_exec_arg++, i++)
|
||||
{
|
||||
log_printf (" args[%02d] == '%s'", i, exec_args[i]);
|
||||
log_printf (" args[%d] == '%s'", i, *ptr_exec_arg);
|
||||
}
|
||||
}
|
||||
execvp (exec_args[0], exec_args);
|
||||
|
||||
+26
-25
@@ -334,10 +334,11 @@ char *
|
||||
calc_expression (const char *expr)
|
||||
{
|
||||
struct t_arraylist *list_values, *list_ops;
|
||||
const char *ptr_expr, *ptr_expr2;
|
||||
char str_result[64], *ptr_operator, *operator;
|
||||
int i, i2, index_op, decimals;
|
||||
int index_op;
|
||||
enum t_calc_symbol last_symbol;
|
||||
double value, factor, *ptr_value;
|
||||
double value, factor, decimals, *ptr_value;
|
||||
|
||||
list_values = NULL;
|
||||
list_ops = NULL;
|
||||
@@ -363,21 +364,21 @@ calc_expression (const char *expr)
|
||||
goto end;
|
||||
|
||||
last_symbol = CALC_SYMBOL_NONE;
|
||||
for (i = 0; expr[i]; i++)
|
||||
for (ptr_expr = expr; ptr_expr[0]; ptr_expr++)
|
||||
{
|
||||
if (expr[i] == ' ')
|
||||
if (ptr_expr[0] == ' ')
|
||||
{
|
||||
/* ignore spaces */
|
||||
continue;
|
||||
}
|
||||
else if (expr[i] == '(')
|
||||
else if (ptr_expr[0] == '(')
|
||||
{
|
||||
ptr_operator = string_strndup (expr + i, 1);
|
||||
ptr_operator = string_strndup (ptr_expr, 1);
|
||||
arraylist_add (list_ops, ptr_operator);
|
||||
last_symbol = CALC_SYMBOL_PARENTHESIS_OPEN;
|
||||
}
|
||||
else if (isdigit ((unsigned char)expr[i]) || (expr[i] == '.')
|
||||
|| ((expr[i] == '-')
|
||||
else if (isdigit ((unsigned char)ptr_expr[0]) || (ptr_expr[0] == '.')
|
||||
|| ((ptr_expr[0] == '-')
|
||||
&& ((last_symbol == CALC_SYMBOL_NONE)
|
||||
|| (last_symbol == CALC_SYMBOL_PARENTHESIS_OPEN)
|
||||
|| (last_symbol == CALC_SYMBOL_OPERATOR))))
|
||||
@@ -385,15 +386,15 @@ calc_expression (const char *expr)
|
||||
value = 0;
|
||||
decimals = 0;
|
||||
factor = 1;
|
||||
if (expr[i] == '-')
|
||||
if (ptr_expr[0] == '-')
|
||||
{
|
||||
factor = -1;
|
||||
i++;
|
||||
ptr_expr++;
|
||||
}
|
||||
while (expr[i]
|
||||
&& (isdigit ((unsigned char)expr[i]) || (expr[i] == '.')))
|
||||
while (ptr_expr[0]
|
||||
&& (isdigit ((unsigned char)ptr_expr[0]) || (ptr_expr[0] == '.')))
|
||||
{
|
||||
if (expr[i] == '.')
|
||||
if (ptr_expr[0] == '.')
|
||||
{
|
||||
if (decimals == 0)
|
||||
decimals = 10;
|
||||
@@ -402,24 +403,24 @@ calc_expression (const char *expr)
|
||||
{
|
||||
if (decimals)
|
||||
{
|
||||
value = value + (((double)(expr[i] - '0')) / decimals);
|
||||
value = value + (((double)(ptr_expr[0] - '0')) / decimals);
|
||||
decimals *= 10;
|
||||
}
|
||||
else
|
||||
{
|
||||
value = (value * 10) + (expr[i] - '0');
|
||||
value = (value * 10) + (ptr_expr[0] - '0');
|
||||
}
|
||||
}
|
||||
i++;
|
||||
ptr_expr++;
|
||||
}
|
||||
i--;
|
||||
ptr_expr--;
|
||||
value *= factor;
|
||||
ptr_value = malloc (sizeof (value));
|
||||
*ptr_value = value;
|
||||
arraylist_add (list_values, ptr_value);
|
||||
last_symbol = CALC_SYMBOL_VALUE;
|
||||
}
|
||||
else if (expr[i] == ')')
|
||||
else if (ptr_expr[0] == ')')
|
||||
{
|
||||
index_op = arraylist_size (list_ops) - 1;
|
||||
while (index_op >= 0)
|
||||
@@ -439,15 +440,15 @@ calc_expression (const char *expr)
|
||||
else
|
||||
{
|
||||
/* operator */
|
||||
i2 = i + 1;
|
||||
while (expr[i2] && (expr[i2] != ' ') && (expr[i2] != '(')
|
||||
&& (expr[i2] != ')') && (expr[i2] != '.')
|
||||
&& (expr[i2] != '-') && !isdigit ((unsigned char)expr[i2]))
|
||||
ptr_expr2 = ptr_expr + 1;
|
||||
while (ptr_expr2[0] && (ptr_expr2[0] != ' ') && (ptr_expr2[0] != '(')
|
||||
&& (ptr_expr2[0] != ')') && (ptr_expr2[0] != '.')
|
||||
&& (ptr_expr2[0] != '-') && !isdigit ((unsigned char)ptr_expr2[0]))
|
||||
{
|
||||
i2++;
|
||||
ptr_expr2++;
|
||||
}
|
||||
operator = string_strndup (expr + i, i2 - i);
|
||||
i = i2 - 1;
|
||||
operator = string_strndup (ptr_expr, ptr_expr2 - ptr_expr);
|
||||
ptr_expr = ptr_expr2 - 1;
|
||||
if (operator)
|
||||
{
|
||||
index_op = arraylist_size (list_ops) - 1;
|
||||
|
||||
+25
-8
@@ -94,7 +94,9 @@ extern char **environ;
|
||||
|
||||
COMMAND_CALLBACK(allbuf)
|
||||
{
|
||||
struct t_arraylist *all_buffers;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
int i, list_size;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pointer;
|
||||
@@ -103,12 +105,26 @@ COMMAND_CALLBACK(allbuf)
|
||||
|
||||
COMMAND_MIN_ARGS(2, "");
|
||||
|
||||
all_buffers = arraylist_new (gui_buffers_count, 0, 0,
|
||||
NULL, NULL, NULL, NULL);
|
||||
|
||||
for (ptr_buffer = gui_buffers; ptr_buffer;
|
||||
ptr_buffer = ptr_buffer->next_buffer)
|
||||
{
|
||||
arraylist_add (all_buffers, ptr_buffer);
|
||||
}
|
||||
|
||||
list_size = arraylist_size (all_buffers);
|
||||
for (i = 0; i < list_size; i++)
|
||||
{
|
||||
ptr_buffer = (struct t_gui_buffer *)arraylist_get (all_buffers, i);
|
||||
if (!gui_buffer_valid (ptr_buffer))
|
||||
continue;
|
||||
(void) input_data (ptr_buffer, argv_eol[1], NULL);
|
||||
}
|
||||
|
||||
arraylist_free (all_buffers);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -584,7 +600,7 @@ COMMAND_CALLBACK(buffer)
|
||||
struct t_arraylist *buffers_to_close;
|
||||
long number, number1, number2, numbers[3];
|
||||
char *error, *value, *pos, *str_number1, *pos_number2;
|
||||
int i, count, prev_number, clear_number;
|
||||
int i, count, prev_number, clear_number, list_size;
|
||||
int buffer_found, arg_name, type_free, switch_to_buffer;
|
||||
|
||||
/* make C compiler happy */
|
||||
@@ -1122,7 +1138,8 @@ COMMAND_CALLBACK(buffer)
|
||||
|
||||
weechat_buffer = gui_buffer_search_main ();
|
||||
|
||||
for (i = 0; i < arraylist_size (buffers_to_close); i++)
|
||||
list_size = arraylist_size (buffers_to_close);
|
||||
for (i = 0; i < list_size; i++)
|
||||
{
|
||||
ptr_buffer = (struct t_gui_buffer *)arraylist_get (buffers_to_close,
|
||||
i);
|
||||
@@ -2130,7 +2147,7 @@ command_eval_print_debug (const char *debug)
|
||||
COMMAND_CALLBACK(eval)
|
||||
{
|
||||
int i, print_only, split_command, condition, debug, error;
|
||||
char *result, *ptr_args, **commands, str_debug[32];
|
||||
char *result, *ptr_args, **commands, **ptr_command, str_debug[32];
|
||||
const char *debug_output;
|
||||
struct t_hashtable *pointers, *options;
|
||||
|
||||
@@ -2247,9 +2264,9 @@ COMMAND_CALLBACK(eval)
|
||||
commands = string_split_command (ptr_args, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
result = eval_expression (commands[i], pointers, NULL,
|
||||
result = eval_expression (*ptr_command, pointers, NULL,
|
||||
options);
|
||||
if (result)
|
||||
{
|
||||
@@ -6236,7 +6253,7 @@ command_set_display_option_lists (char **argv, int arg_start, int arg_end,
|
||||
|
||||
COMMAND_CALLBACK(set)
|
||||
{
|
||||
char *value;
|
||||
char *value, **ptr_environ;
|
||||
const char *ptr_string;
|
||||
int i, number_found, rc, display_only_changed, arg_option_start;
|
||||
int arg_option_end, list_size;
|
||||
@@ -6258,9 +6275,9 @@ COMMAND_CALLBACK(set)
|
||||
list = weelist_new ();
|
||||
if (!list)
|
||||
COMMAND_ERROR;
|
||||
for (i = 0; environ[i]; i++)
|
||||
for (ptr_environ = environ; *ptr_environ; ptr_environ++)
|
||||
{
|
||||
weelist_add (list, environ[i], WEECHAT_LIST_POS_SORT, NULL);
|
||||
weelist_add (list, *ptr_environ, WEECHAT_LIST_POS_SORT, NULL);
|
||||
}
|
||||
list_size = weelist_size (list);
|
||||
for (i = 0; i < list_size; i++)
|
||||
|
||||
@@ -1318,9 +1318,9 @@ completion_list_add_config_option_values_cb (const void *pointer, void *data,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
char *pos_space, *option_full_name, *pos_section, *pos_option;
|
||||
char *file, *section, *value_string;
|
||||
char *file, *section, *value_string, **ptr_value;
|
||||
const char *color_name;
|
||||
int length, i;
|
||||
int length;
|
||||
struct t_config_file *ptr_config;
|
||||
struct t_config_section *ptr_section, *section_found;
|
||||
struct t_config_option *option_found;
|
||||
@@ -1401,10 +1401,11 @@ completion_list_add_config_option_values_cb (const void *pointer, void *data,
|
||||
case CONFIG_OPTION_TYPE_INTEGER:
|
||||
if (option_found->string_values)
|
||||
{
|
||||
for (i = 0; option_found->string_values[i]; i++)
|
||||
for (ptr_value = option_found->string_values;
|
||||
*ptr_value; ptr_value++)
|
||||
{
|
||||
gui_completion_list_add (completion,
|
||||
option_found->string_values[i],
|
||||
*ptr_value,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
gui_completion_list_add (completion, "++1",
|
||||
@@ -1884,8 +1885,7 @@ completion_list_add_env_vars_cb (const void *pointer, void *data,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
int i;
|
||||
char *pos, *name;
|
||||
char *pos, *name, **ptr_environ;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pointer;
|
||||
@@ -1893,12 +1893,12 @@ completion_list_add_env_vars_cb (const void *pointer, void *data,
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
for (i = 0; environ[i]; i++)
|
||||
for (ptr_environ = environ; *ptr_environ; ptr_environ++)
|
||||
{
|
||||
pos = strchr (environ[i], '=');
|
||||
pos = strchr (*ptr_environ, '=');
|
||||
if (pos)
|
||||
{
|
||||
name = string_strndup (environ[i], pos - environ[i]);
|
||||
name = string_strndup (*ptr_environ, pos - *ptr_environ);
|
||||
if (name)
|
||||
{
|
||||
gui_completion_list_add (completion, name,
|
||||
|
||||
@@ -893,8 +893,7 @@ void
|
||||
config_change_emphasized_attributes (const void *pointer, void *data,
|
||||
struct t_config_option *option)
|
||||
{
|
||||
int i;
|
||||
const char *ptr_attr;
|
||||
const char *ptr_attributes, *ptr_attr;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pointer;
|
||||
@@ -903,12 +902,12 @@ config_change_emphasized_attributes (const void *pointer, void *data,
|
||||
|
||||
config_emphasized_attributes = 0;
|
||||
|
||||
ptr_attr = CONFIG_STRING(config_look_emphasized_attributes);
|
||||
if (ptr_attr)
|
||||
ptr_attributes = CONFIG_STRING(config_look_emphasized_attributes);
|
||||
if (ptr_attributes)
|
||||
{
|
||||
for (i = 0; ptr_attr[i]; i++)
|
||||
for (ptr_attr = ptr_attributes; *ptr_attr; ptr_attr++)
|
||||
{
|
||||
config_emphasized_attributes |= gui_color_attr_get_flag (ptr_attr[i]);
|
||||
config_emphasized_attributes |= gui_color_attr_get_flag (*ptr_attr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+19
-12
@@ -299,6 +299,9 @@ eval_string_range_chars (const char *range)
|
||||
string = NULL;
|
||||
result = NULL;
|
||||
|
||||
if (!range || !range[0])
|
||||
goto end;
|
||||
|
||||
for (i = 0; eval_range_chars[i][0]; i++)
|
||||
{
|
||||
if (strcmp (range, eval_range_chars[i][0]) == 0)
|
||||
@@ -308,11 +311,15 @@ eval_string_range_chars (const char *range)
|
||||
char1 = utf8_char_int (range);
|
||||
|
||||
/* next char must be '-' */
|
||||
if (!range[0])
|
||||
goto end;
|
||||
ptr_char = utf8_next_char (range);
|
||||
if (!ptr_char || !ptr_char[0] || (ptr_char[0] != '-'))
|
||||
goto end;
|
||||
|
||||
/* next char is the char2 */
|
||||
if (!range[0])
|
||||
goto end;
|
||||
ptr_char = utf8_next_char (ptr_char);
|
||||
if (!ptr_char || !ptr_char[0])
|
||||
goto end;
|
||||
@@ -506,8 +513,8 @@ char *
|
||||
eval_string_split (const char *text)
|
||||
{
|
||||
char *pos, *pos2, *pos3, *str_number, *separators, **items, *value, *error;
|
||||
char str_value[32], *str_flags, **list_flags, *strip_items;
|
||||
int i, num_items, count_items, random_item, flags;
|
||||
char str_value[32], *str_flags, **list_flags, *strip_items, **ptr_flag;
|
||||
int num_items, count_items, random_item, flags;
|
||||
long number, max_items;
|
||||
|
||||
str_number = NULL;
|
||||
@@ -563,25 +570,25 @@ eval_string_split (const char *text)
|
||||
list_flags = string_split (str_flags, "+", NULL, 0, 0, NULL);
|
||||
if (list_flags)
|
||||
{
|
||||
for (i = 0; list_flags[i]; i++)
|
||||
for (ptr_flag = list_flags; *ptr_flag; ptr_flag++)
|
||||
{
|
||||
if (strcmp (list_flags[i], "strip_left") == 0)
|
||||
if (strcmp (*ptr_flag, "strip_left") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_STRIP_LEFT;
|
||||
else if (strcmp (list_flags[i], "strip_right") == 0)
|
||||
else if (strcmp (*ptr_flag, "strip_right") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_STRIP_RIGHT;
|
||||
else if (strcmp (list_flags[i], "collapse_seps") == 0)
|
||||
else if (strcmp (*ptr_flag, "collapse_seps") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_COLLAPSE_SEPS;
|
||||
else if (strcmp (list_flags[i], "keep_eol") == 0)
|
||||
else if (strcmp (*ptr_flag, "keep_eol") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_KEEP_EOL;
|
||||
else if (strncmp (list_flags[i], "strip_items=", 12) == 0)
|
||||
else if (strncmp (*ptr_flag, "strip_items=", 12) == 0)
|
||||
{
|
||||
if (strip_items)
|
||||
free (strip_items);
|
||||
strip_items = strdup (list_flags[i] + 12);
|
||||
strip_items = strdup (*ptr_flag + 12);
|
||||
}
|
||||
else if (strncmp (list_flags[i], "max_items=", 10) == 0)
|
||||
else if (strncmp (*ptr_flag, "max_items=", 10) == 0)
|
||||
{
|
||||
max_items = strtol (list_flags[i] + 10, &error, 10);
|
||||
max_items = strtol (*ptr_flag + 10, &error, 10);
|
||||
if (!error || error[0] || (max_items < 0))
|
||||
goto end;
|
||||
}
|
||||
@@ -906,7 +913,7 @@ eval_string_base_encode (const char *text)
|
||||
|
||||
ptr_string++;
|
||||
length = strlen (ptr_string);
|
||||
result = malloc ((length * 4) + 1);
|
||||
result = malloc ((length * 4) + 8 + 1);
|
||||
if (!result)
|
||||
goto end;
|
||||
|
||||
|
||||
+33
-48
@@ -929,20 +929,20 @@ string_match (const char *string, const char *mask, int case_sensitive)
|
||||
int
|
||||
string_match_list (const char *string, const char **masks, int case_sensitive)
|
||||
{
|
||||
int match, i;
|
||||
const char *ptr_mask;
|
||||
int match;
|
||||
const char **ptr_mask, *ptr_mask2;
|
||||
|
||||
if (!string || !masks)
|
||||
return 0;
|
||||
|
||||
match = 0;
|
||||
|
||||
for (i = 0; masks[i]; i++)
|
||||
for (ptr_mask = masks; *ptr_mask; ptr_mask++)
|
||||
{
|
||||
ptr_mask = (masks[i][0] == '!') ? masks[i] + 1 : masks[i];
|
||||
if (string_match (string, ptr_mask, case_sensitive))
|
||||
ptr_mask2 = ((*ptr_mask)[0] == '!') ? *ptr_mask + 1 : *ptr_mask;
|
||||
if (string_match (string, ptr_mask2, case_sensitive))
|
||||
{
|
||||
if (masks[i][0] == '!')
|
||||
if ((*ptr_mask)[0] == '!')
|
||||
return 0;
|
||||
else
|
||||
match = 1;
|
||||
@@ -2684,12 +2684,12 @@ string_split_shell (const char *string, int *num_items)
|
||||
void
|
||||
string_free_split (char **split_string)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_string)
|
||||
{
|
||||
for (i = 0; split_string[i]; i++)
|
||||
free (split_string[i]);
|
||||
for (ptr = split_string; *ptr; ptr++)
|
||||
free (*ptr);
|
||||
free (split_string);
|
||||
}
|
||||
}
|
||||
@@ -2701,12 +2701,12 @@ string_free_split (char **split_string)
|
||||
void
|
||||
string_free_split_shared (char **split_string)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_string)
|
||||
{
|
||||
for (i = 0; split_string[i]; i++)
|
||||
string_shared_free (split_string[i]);
|
||||
for (ptr = split_string; *ptr; ptr++)
|
||||
string_shared_free (*ptr);
|
||||
free (split_string);
|
||||
}
|
||||
}
|
||||
@@ -2726,8 +2726,9 @@ string_rebuild_split_string (const char **split_string,
|
||||
const char *separator,
|
||||
int index_start, int index_end)
|
||||
{
|
||||
int i, length, length_separator;
|
||||
char *result;
|
||||
const char **ptr_string;
|
||||
char **result;
|
||||
int i;
|
||||
|
||||
if (!split_string || (index_start < 0)
|
||||
|| ((index_end >= 0) && (index_end < index_start)))
|
||||
@@ -2735,39 +2736,23 @@ string_rebuild_split_string (const char **split_string,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
length = 0;
|
||||
length_separator = (separator) ? strlen (separator) : 0;
|
||||
result = string_dyn_alloc (256);
|
||||
|
||||
for (i = 0; split_string[i]; i++)
|
||||
for (ptr_string = split_string, i = 0; *ptr_string; ptr_string++, i++)
|
||||
{
|
||||
if ((index_end >= 0) && (i > index_end))
|
||||
break;
|
||||
if (i >= index_start)
|
||||
length += strlen (split_string[i]) + length_separator;
|
||||
}
|
||||
|
||||
if (length == 0)
|
||||
return strdup ("");
|
||||
|
||||
result = malloc (length + 1);
|
||||
if (!result)
|
||||
return NULL;
|
||||
|
||||
result[0] = '\0';
|
||||
|
||||
for (i = index_start; split_string[i]; i++)
|
||||
{
|
||||
if ((index_end >= 0) && (i > index_end))
|
||||
break;
|
||||
strcat (result, split_string[i]);
|
||||
if (separator && ((index_end < 0) || (i + 1 <= index_end))
|
||||
&& split_string[i + 1])
|
||||
{
|
||||
strcat (result, separator);
|
||||
if (i > index_start)
|
||||
string_dyn_concat (result, separator, -1);
|
||||
string_dyn_concat (result, *ptr_string, -1);
|
||||
}
|
||||
if (i == INT_MAX)
|
||||
break;
|
||||
}
|
||||
|
||||
return result;
|
||||
return string_dyn_free (result, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2869,12 +2854,12 @@ string_split_command (const char *command, char separator)
|
||||
void
|
||||
string_free_split_command (char **split_command)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_command)
|
||||
{
|
||||
for (i = 0; split_command[i]; i++)
|
||||
free (split_command[i]);
|
||||
for (ptr = split_command; *ptr; ptr++)
|
||||
free (*ptr);
|
||||
free (split_command);
|
||||
}
|
||||
}
|
||||
@@ -2939,14 +2924,12 @@ string_split_tags (const char *tags, int *num_tags)
|
||||
void
|
||||
string_free_split_tags (char ***split_tags)
|
||||
{
|
||||
int i;
|
||||
char ***ptr;
|
||||
|
||||
if (split_tags)
|
||||
{
|
||||
for (i = 0; split_tags[i]; i++)
|
||||
{
|
||||
string_free_split_shared (split_tags[i]);
|
||||
}
|
||||
for (ptr = split_tags; *ptr; ptr++)
|
||||
string_free_split_shared (*ptr);
|
||||
free (split_tags);
|
||||
}
|
||||
}
|
||||
@@ -3433,7 +3416,8 @@ int
|
||||
string_base32_encode (const char *from, int length, char *to)
|
||||
{
|
||||
unsigned char base32_table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";
|
||||
int count, value, next, bits_left, pad, index;
|
||||
unsigned int value;
|
||||
int count, next, bits_left, pad, index;
|
||||
int length_padding[8] = { 0, 0, 6, 0, 4, 3, 0, 2 };
|
||||
|
||||
if (!from || !to)
|
||||
@@ -3511,7 +3495,8 @@ int
|
||||
string_base32_decode (const char *from, char *to)
|
||||
{
|
||||
const char *ptr_from;
|
||||
int value, bits_left, count;
|
||||
int bits_left, count;
|
||||
unsigned int value;
|
||||
unsigned char c;
|
||||
|
||||
if (!from || !to)
|
||||
|
||||
+139
-16
@@ -47,7 +47,7 @@
|
||||
char *url_type_string[] = { "string", "long", "long long", "mask", "list" };
|
||||
|
||||
/*
|
||||
* Constants/options for Curl 7.63.0
|
||||
* Constants/options for Curl 7.87.0
|
||||
* (this list of options must be updated on every new Curl release)
|
||||
*/
|
||||
|
||||
@@ -111,6 +111,12 @@ struct t_url_constant url_protocols[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x072800 /* 7.40.0 */
|
||||
URL_DEF_CONST(PROTO, SMB),
|
||||
URL_DEF_CONST(PROTO, SMBS),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074700 /* 7.71.0 */
|
||||
URL_DEF_CONST(PROTO, MQTT),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074B00 /* 7.75.0 */
|
||||
URL_DEF_CONST(PROTO, GOPHERS),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
@@ -144,7 +150,7 @@ struct t_url_constant url_auth[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 /* 7.22.0 */
|
||||
URL_DEF_CONST(AUTH, NTLM_WB),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 && LIBCURL_VERSION_NUM < 0x072600 /* 7.10.6 - 7.37.0 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 && LIBCURL_VERSION_NUM < 0x072600 /* 7.10.6 < 7.38.0 */
|
||||
URL_DEF_CONST(AUTH, GSSNEGOTIATE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072600 /* 7.38.0 */
|
||||
@@ -155,6 +161,9 @@ struct t_url_constant url_auth[] =
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073D00 /* 7.61.0 */
|
||||
URL_DEF_CONST(AUTH, BEARER),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074B00 /* 7.75.0 */
|
||||
URL_DEF_CONST(AUTH, AWS_SIGV4),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
@@ -195,6 +204,9 @@ struct t_url_constant url_http_version[] =
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073100 /* 7.49.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 2_PRIOR_KNOWLEDGE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074200 /* 7.66.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 3),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
@@ -321,6 +333,18 @@ struct t_url_constant url_ssl_options[] =
|
||||
URL_DEF_CONST(SSLSET, OK),
|
||||
URL_DEF_CONST(SSLSET, TOO_LATE),
|
||||
URL_DEF_CONST(SSLSET, UNKNOWN_BACKEND),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074400 /* 7.68.0 */
|
||||
URL_DEF_CONST(SSLOPT, NO_PARTIALCHAIN),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074600 /* 7.70.0 */
|
||||
URL_DEF_CONST(SSLOPT, REVOKE_BEST_EFFORT),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074700 /* 7.71.0 */
|
||||
URL_DEF_CONST(SSLOPT, NATIVE_CA),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074D00 /* 7.77.0 */
|
||||
URL_DEF_CONST(SSLOPT, AUTO_CLIENT_CERT),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
@@ -364,6 +388,38 @@ struct t_url_constant url_header[] =
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_hsts[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x074A00 /* 7.74.0 */
|
||||
URL_DEF_CONST(HSTS, ENABLE),
|
||||
URL_DEF_CONST(HSTS, READONLYFILE),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_mime[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x075100 /* 7.81.0 */
|
||||
URL_DEF_CONST(MIMEOPT, FORMESCAPE),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_websocket[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x075600 /* 7.86.0 */
|
||||
URL_DEF_CONST(WS, BINARY),
|
||||
URL_DEF_CONST(WS, CLOSE),
|
||||
URL_DEF_CONST(WS, CONT),
|
||||
URL_DEF_CONST(WS, OFFSET),
|
||||
URL_DEF_CONST(WS, PING),
|
||||
URL_DEF_CONST(WS, PONG),
|
||||
URL_DEF_CONST(WS, RAW_MODE),
|
||||
URL_DEF_CONST(WS, TEXT),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_option url_options[] =
|
||||
{
|
||||
/*
|
||||
@@ -423,9 +479,13 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x071300 /* 7.19.0 */
|
||||
URL_DEF_OPTION(ADDRESS_SCOPE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x075500 /* 7.19.4 < 7.85.0 */
|
||||
URL_DEF_OPTION(PROTOCOLS, MASK, url_protocols),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x075500 /* 7.19.4 < 7.85.0 */
|
||||
URL_DEF_OPTION(REDIR_PROTOCOLS, MASK, url_protocols),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
URL_DEF_OPTION(NOPROXY, STRING, NULL),
|
||||
URL_DEF_OPTION(SOCKS5_GSSAPI_NEC, LONG, NULL),
|
||||
#endif
|
||||
@@ -450,7 +510,7 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x072D00 /* 7.45.0 */
|
||||
URL_DEF_OPTION(DEFAULT_PROTOCOL, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x073100 /* 7.19.4 - 7.48.0 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x073100 /* 7.19.4 < 7.49.0 */
|
||||
URL_DEF_OPTION(SOCKS5_GSSAPI_SERVICE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073100 /* 7.49.0 */
|
||||
@@ -465,6 +525,12 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x073E00 /* 7.62.0 */
|
||||
URL_DEF_OPTION(DOH_URL, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075500 /* 7.85.0 */
|
||||
URL_DEF_OPTION(PROTOCOLS_STR, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075500 /* 7.85.0 */
|
||||
URL_DEF_OPTION(REDIR_PROTOCOLS_STR, STRING, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* names and password options (authentication)
|
||||
@@ -494,6 +560,10 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(TLSAUTH_USERNAME, STRING, NULL),
|
||||
URL_DEF_OPTION(TLSAUTH_PASSWORD, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074200 /* 7.66.0 */
|
||||
URL_DEF_OPTION(SASL_AUTHZID, STRING, NULL),
|
||||
#endif
|
||||
|
||||
#if LIBCURL_VERSION_NUM >= 0x071F00 /* 7.31.0 */
|
||||
URL_DEF_OPTION(SASL_IR, LONG, NULL),
|
||||
#endif
|
||||
@@ -513,7 +583,6 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(AUTOREFERER, LONG, NULL),
|
||||
URL_DEF_OPTION(FOLLOWLOCATION, LONG, NULL),
|
||||
URL_DEF_OPTION(PUT, LONG, NULL),
|
||||
URL_DEF_OPTION(POST, LONG, NULL),
|
||||
URL_DEF_OPTION(POSTFIELDS, STRING, NULL),
|
||||
URL_DEF_OPTION(REFERER, STRING, NULL),
|
||||
@@ -553,7 +622,7 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(COOKIELIST, STRING, NULL),
|
||||
URL_DEF_OPTION(IGNORE_CONTENT_LENGTH, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071506 /* 7.15.6 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071506 /* 7.21.6 */
|
||||
URL_DEF_OPTION(ACCEPT_ENCODING, STRING, NULL),
|
||||
URL_DEF_OPTION(TRANSFER_ENCODING, LONG, NULL),
|
||||
#endif
|
||||
@@ -583,9 +652,16 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x073700 /* 7.55.0 */
|
||||
URL_DEF_OPTION(REQUEST_TARGET, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 && LIBCURL_VERSION_NUM < 0x073800 /* 7.1.0 - 7.0.55 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 && LIBCURL_VERSION_NUM < 0x073800 /* 7.1.0 < 7.56.0 */
|
||||
URL_DEF_OPTION(HTTPPOST, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074000 /* 7.64.0 */
|
||||
URL_DEF_OPTION(HTTP09_ALLOWED, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074A00 /* 7.74.0 */
|
||||
URL_DEF_OPTION(HSTS, STRING, NULL),
|
||||
URL_DEF_OPTION(HSTS_CTRL, MASK, url_hsts),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* SMTP options
|
||||
@@ -597,6 +673,9 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x071900 /* 7.25.0 */
|
||||
URL_DEF_OPTION(MAIL_AUTH, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074500 /* 7.69.0 */
|
||||
URL_DEF_OPTION(MAIL_RCPT_ALLLOWFAILS, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* TFTP options
|
||||
@@ -628,7 +707,7 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A07 /* 7.10.7 */
|
||||
URL_DEF_OPTION(FTP_CREATE_MISSING_DIRS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 /* 7.10.8 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 && LIBCURL_VERSION_NUM < 0x075500 /* 7.10.8 < 7.85.0 */
|
||||
URL_DEF_OPTION(FTP_RESPONSE_TIMEOUT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070C02 /* 7.12.2 */
|
||||
@@ -668,6 +747,9 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(RTSP_CLIENT_CSEQ, LONG, NULL),
|
||||
URL_DEF_OPTION(RTSP_SERVER_CSEQ, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074B00 /* 7.75.0 */
|
||||
URL_DEF_OPTION(AWS_SIGV4, STRING, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* protocol options
|
||||
@@ -706,6 +788,9 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x073E00 /* 7.62.0 */
|
||||
URL_DEF_OPTION(UPLOAD_BUFFERSIZE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075100 /* 7.81.0 */
|
||||
URL_DEF_OPTION(MIME_OPTIONS, MASK, url_mime),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* connection options
|
||||
@@ -734,6 +819,9 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(TIMEOUT_MS, LONG, NULL),
|
||||
URL_DEF_OPTION(CONNECTTIMEOUT_MS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074100 /* 7.65.0 */
|
||||
URL_DEF_OPTION(MAXAGE_CONN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071003 /* 7.16.3 */
|
||||
URL_DEF_OPTION(MAXCONNECTS, LONG, NULL),
|
||||
#endif
|
||||
@@ -764,6 +852,9 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x073E00 /* 7.62.0 */
|
||||
URL_DEF_OPTION(UPKEEP_INTERVAL_MS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075000 /* 7.80.0 */
|
||||
URL_DEF_OPTION(MAXLIFETIME_CONN, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* SSL and security options
|
||||
@@ -776,8 +867,10 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(SSL_VERIFYPEER, LONG, NULL),
|
||||
URL_DEF_OPTION(CAINFO, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 /* 7.7.0 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 && LIBCURL_VERSION_NUM < 0x075400 /* 7.7.0 < 7.84.0 */
|
||||
URL_DEF_OPTION(RANDOM_FILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 && LIBCURL_VERSION_NUM < 0x075400 /* 7.7.0 < 7.84.0 */
|
||||
URL_DEF_OPTION(EGDSOCKET, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070801 /* 7.8.1 */
|
||||
@@ -820,6 +913,8 @@ struct t_url_option url_options[] =
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072400 /* 7.36.0 */
|
||||
URL_DEF_OPTION(SSL_ENABLE_ALPN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072400 && LIBCURL_VERSION_NUM < 0x075600 /* 7.36.0 < 7.86.0 */
|
||||
URL_DEF_OPTION(SSL_ENABLE_NPN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072700 /* 7.39.0 */
|
||||
@@ -854,6 +949,20 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(TLS13_CIPHERS, LIST, NULL),
|
||||
URL_DEF_OPTION(PROXY_TLS13_CIPHERS, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074700 /* 7.71.0 */
|
||||
URL_DEF_OPTION(PROXY_ISSUERCERT, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074900 /* 7.73.0 */
|
||||
URL_DEF_OPTION(SSL_EC_CURVES, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074C00 /* 7.76.0 */
|
||||
URL_DEF_OPTION(DOH_SSL_VERIFYHOST, LONG, NULL),
|
||||
URL_DEF_OPTION(DOH_SSL_VERIFYPEER, LONG, NULL),
|
||||
URL_DEF_OPTION(DOH_SSL_VERIFYSTATUS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075700 /* 7.87.0 */
|
||||
URL_DEF_OPTION(CA_CACHE_TIMEOUT, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* SSH options
|
||||
@@ -872,13 +981,8 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x073800 /* 7.56.0 */
|
||||
URL_DEF_OPTION(SSH_COMPRESSION, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* other options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071004 /* 7.16.4 */
|
||||
URL_DEF_OPTION(NEW_FILE_PERMS, LONG, NULL),
|
||||
URL_DEF_OPTION(NEW_DIRECTORY_PERMS, LONG, NULL),
|
||||
#if LIBCURL_VERSION_NUM >= 0x075000 /* 7.80.0 */
|
||||
URL_DEF_OPTION(SSH_HOST_PUBLIC_KEY_SHA256, STRING, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -887,6 +991,25 @@ struct t_url_option url_options[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 /* 7.7 */
|
||||
URL_DEF_OPTION(TELNETOPTIONS, LIST, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* websocket options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x075600 /* 7.86.0 */
|
||||
URL_DEF_OPTION(WS_OPTIONS, MASK, url_websocket),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* other options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071004 /* 7.16.4 */
|
||||
URL_DEF_OPTION(NEW_FILE_PERMS, LONG, NULL),
|
||||
URL_DEF_OPTION(NEW_DIRECTORY_PERMS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075700 /* 7.87.0 */
|
||||
URL_DEF_OPTION(QUICK_EXIT, LONG, NULL),
|
||||
#endif
|
||||
|
||||
{ NULL, 0, 0, NULL },
|
||||
};
|
||||
|
||||
|
||||
+3
-1
@@ -469,7 +469,9 @@ util_version_number (const char *version)
|
||||
{
|
||||
if (number < 0)
|
||||
number = 0;
|
||||
else if (number > 0xFF)
|
||||
else if ((i == 0) && (number > 0x7F))
|
||||
number = 0x7F;
|
||||
else if ((i > 0) && (number > 0xFF))
|
||||
number = 0xFF;
|
||||
version_int[i] = number;
|
||||
}
|
||||
|
||||
@@ -705,7 +705,7 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
char **content, str_reinit_color[32];
|
||||
char str_reinit_color_space[32], str_reinit_color_space_start_line[32];
|
||||
char str_start_item[32];
|
||||
char *item_value, *item_value2, ****split_items, **linear_items;
|
||||
char *item_value, *item_value2, ****split_items, **linear_items, **ptr_item;
|
||||
int i, j, k, sub, index;
|
||||
int at_least_one_item, first_sub_item;
|
||||
int length_reinit_color, length_reinit_color_space, length_start_item;
|
||||
@@ -860,15 +860,15 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS,
|
||||
0,
|
||||
NULL);
|
||||
for (j = 0; split_items[i][sub][j]; j++)
|
||||
for (ptr_item = split_items[i][sub]; *ptr_item; ptr_item++)
|
||||
{
|
||||
total_items++;
|
||||
|
||||
length = strlen (split_items[i][sub][j]);
|
||||
length = strlen (*ptr_item);
|
||||
if (length > max_length)
|
||||
max_length = length;
|
||||
|
||||
length = gui_chat_strlen_screen (split_items[i][sub][j]);
|
||||
length = gui_chat_strlen_screen (*ptr_item);
|
||||
if (length > max_length_screen)
|
||||
max_length_screen = length;
|
||||
}
|
||||
@@ -915,9 +915,10 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
{
|
||||
if (split_items[i][sub])
|
||||
{
|
||||
for (j = 0; split_items[i][sub][j]; j++)
|
||||
for (ptr_item = split_items[i][sub]; *ptr_item;
|
||||
ptr_item++)
|
||||
{
|
||||
linear_items[index++] = split_items[i][sub][j];
|
||||
linear_items[index++] = *ptr_item;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -906,6 +906,9 @@ gui_chat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date,
|
||||
time_t date_printed;
|
||||
int i, last_y, num_lines_to_add;
|
||||
|
||||
if (!message)
|
||||
return;
|
||||
|
||||
if (gui_init_ok && !gui_chat_buffer_valid (buffer, GUI_BUFFER_TYPE_FREE))
|
||||
return;
|
||||
|
||||
|
||||
+12
-12
@@ -1046,9 +1046,9 @@ gui_key_focus_command (const char *key, int context,
|
||||
struct t_hashtable **hashtable_focus)
|
||||
{
|
||||
struct t_gui_key *ptr_key;
|
||||
int i, matching, debug, rc;
|
||||
int matching, debug, rc;
|
||||
unsigned long value;
|
||||
char *command, **commands;
|
||||
char *command, **commands, **ptr_command;
|
||||
const char *str_buffer;
|
||||
struct t_hashtable *hashtable;
|
||||
struct t_weelist *list_keys;
|
||||
@@ -1134,25 +1134,25 @@ gui_key_focus_command (const char *key, int context,
|
||||
commands = string_split_command (ptr_key->command, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
if (string_strncasecmp (commands[i], "hsignal:", 8) == 0)
|
||||
if (string_strncasecmp (*ptr_command, "hsignal:", 8) == 0)
|
||||
{
|
||||
if (commands[i][8])
|
||||
if ((*ptr_command)[8])
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
gui_chat_printf (NULL,
|
||||
_("Sending hsignal: \"%s\""),
|
||||
commands[i] + 8);
|
||||
*ptr_command + 8);
|
||||
}
|
||||
(void) hook_hsignal_send (commands[i] + 8,
|
||||
(void) hook_hsignal_send (*ptr_command + 8,
|
||||
hashtable);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
command = eval_expression (commands[i], NULL,
|
||||
command = eval_expression (*ptr_command, NULL,
|
||||
hashtable, NULL);
|
||||
if (command)
|
||||
{
|
||||
@@ -1293,9 +1293,9 @@ gui_key_is_complete (const char *key)
|
||||
int
|
||||
gui_key_pressed (const char *key_str)
|
||||
{
|
||||
int i, first_key, context, length, length_key, rc, signal_sent;
|
||||
int first_key, context, length, length_key, rc, signal_sent;
|
||||
struct t_gui_key *ptr_key;
|
||||
char *pos, signal_name[128], **commands;
|
||||
char *pos, signal_name[128], **commands, **ptr_command;
|
||||
|
||||
signal_sent = 0;
|
||||
|
||||
@@ -1390,10 +1390,10 @@ gui_key_pressed (const char *key_str)
|
||||
commands = string_split_command (ptr_key->command, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
(void) input_data (gui_current_window->buffer,
|
||||
commands[i], NULL);
|
||||
*ptr_command, NULL);
|
||||
}
|
||||
string_free_split (commands);
|
||||
}
|
||||
|
||||
+6
-5
@@ -759,8 +759,9 @@ int
|
||||
gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
int tags_count, char ***tags_array)
|
||||
{
|
||||
int i, j, k, match, tag_found, tag_negated;
|
||||
int i, j, match, tag_found, tag_negated;
|
||||
const char *ptr_tag;
|
||||
char **ptr;
|
||||
|
||||
if (!line_data)
|
||||
return 0;
|
||||
@@ -768,9 +769,9 @@ gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
for (i = 0; i < tags_count; i++)
|
||||
{
|
||||
match = 1;
|
||||
for (j = 0; tags_array[i][j]; j++)
|
||||
for (ptr = tags_array[i]; *ptr; ptr++)
|
||||
{
|
||||
ptr_tag = tags_array[i][j];
|
||||
ptr_tag = *ptr;
|
||||
tag_found = 0;
|
||||
tag_negated = 0;
|
||||
|
||||
@@ -787,9 +788,9 @@ gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
}
|
||||
else
|
||||
{
|
||||
for (k = 0; k < line_data->tags_count; k++)
|
||||
for (j = 0; j < line_data->tags_count; j++)
|
||||
{
|
||||
if (string_match (line_data->tags_array[k], ptr_tag, 0))
|
||||
if (string_match (line_data->tags_array[j], ptr_tag, 0))
|
||||
{
|
||||
tag_found = 1;
|
||||
break;
|
||||
|
||||
@@ -44,7 +44,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of scheme scripts (with Guile)"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4007);
|
||||
WEECHAT_PLUGIN_PRIORITY(4070);
|
||||
|
||||
struct t_weechat_plugin *weechat_guile_plugin = NULL;
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ set(LINK_LIBS)
|
||||
include_directories(${GNUTLS_INCLUDE_PATH})
|
||||
list(APPEND LINK_LIBS ${GNUTLS_LIBRARY})
|
||||
|
||||
list(APPEND LINK_LIBS ${GCRYPT_LDFLAGS})
|
||||
list(APPEND LINK_LIBS ${LIBGCRYPT_LDFLAGS})
|
||||
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# link with resolv lib on macOS
|
||||
|
||||
@@ -1208,14 +1208,14 @@ void
|
||||
irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
const char *nick)
|
||||
{
|
||||
int i, unmask_delay, length_tags, nick_found, join, account;
|
||||
int unmask_delay, length_tags, nick_found, join, account;
|
||||
int chghost, setname, nick_changed, smart_filtered, remove_smart_filter;
|
||||
time_t *ptr_time, date_min;
|
||||
struct t_hdata *hdata_line, *hdata_line_data;
|
||||
struct t_gui_line *own_lines;
|
||||
struct t_gui_line *line;
|
||||
struct t_gui_line_data *line_data;
|
||||
const char **tags, *irc_nick1, *irc_nick2;
|
||||
const char **tags, *irc_nick1, *irc_nick2, **ptr_tag;
|
||||
char *new_tags, *nick_to_search;
|
||||
struct t_hashtable *hashtable;
|
||||
|
||||
@@ -1292,30 +1292,30 @@ irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
irc_nick1 = NULL;
|
||||
irc_nick2 = NULL;
|
||||
smart_filtered = 0;
|
||||
for (i = 0; tags[i]; i++)
|
||||
for (ptr_tag = tags; *ptr_tag; ptr_tag++)
|
||||
{
|
||||
if (strncmp (tags[i], "nick_", 5) == 0)
|
||||
if (strncmp (*ptr_tag, "nick_", 5) == 0)
|
||||
{
|
||||
if (strcmp (tags[i] + 5, nick_to_search) == 0)
|
||||
if (strcmp (*ptr_tag + 5, nick_to_search) == 0)
|
||||
nick_found = 1;
|
||||
}
|
||||
else if (strcmp (tags[i], "irc_join") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_join") == 0)
|
||||
join = 1;
|
||||
else if (strcmp (tags[i], "irc_account") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_account") == 0)
|
||||
account = 1;
|
||||
else if (strcmp (tags[i], "irc_chghost") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_chghost") == 0)
|
||||
chghost = 1;
|
||||
else if (strcmp (tags[i], "irc_setname") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_setname") == 0)
|
||||
setname = 1;
|
||||
else if (strcmp (tags[i], "irc_nick") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_nick") == 0)
|
||||
nick_changed = 1;
|
||||
else if (strncmp (tags[i], "irc_nick1_", 10) == 0)
|
||||
irc_nick1 = tags[i] + 10;
|
||||
else if (strncmp (tags[i], "irc_nick2_", 10) == 0)
|
||||
irc_nick2 = tags[i] + 10;
|
||||
else if (strcmp (tags[i], "irc_smart_filter") == 0)
|
||||
else if (strncmp (*ptr_tag, "irc_nick1_", 10) == 0)
|
||||
irc_nick1 = *ptr_tag + 10;
|
||||
else if (strncmp (*ptr_tag, "irc_nick2_", 10) == 0)
|
||||
irc_nick2 = *ptr_tag + 10;
|
||||
else if (strcmp (*ptr_tag, "irc_smart_filter") == 0)
|
||||
smart_filtered = 1;
|
||||
length_tags += strlen (tags[i]) + 1;
|
||||
length_tags += strlen (*ptr_tag) + 1;
|
||||
}
|
||||
|
||||
/* check if we must remove tag "irc_smart_filter" in line */
|
||||
@@ -1347,13 +1347,13 @@ irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
{
|
||||
/* build a string with all tags, except "irc_smart_filter" */
|
||||
new_tags[0] = '\0';
|
||||
for (i = 0; tags[i]; i++)
|
||||
for (ptr_tag = tags; *ptr_tag; ptr_tag++)
|
||||
{
|
||||
if (strcmp (tags[i], "irc_smart_filter") != 0)
|
||||
if (strcmp (*ptr_tag, "irc_smart_filter") != 0)
|
||||
{
|
||||
if (new_tags[0])
|
||||
strcat (new_tags, ",");
|
||||
strcat (new_tags, tags[i]);
|
||||
strcat (new_tags, *ptr_tag);
|
||||
}
|
||||
}
|
||||
hashtable = weechat_hashtable_new (4,
|
||||
|
||||
@@ -2428,6 +2428,10 @@ IRC_PROTOCOL_CALLBACK(notice)
|
||||
|
||||
if (ptr_channel)
|
||||
{
|
||||
/* rename buffer if open with nick case not matching */
|
||||
if (strcmp (ptr_channel->name, nick) != 0)
|
||||
irc_channel_pv_rename (server, ptr_channel, nick);
|
||||
|
||||
if (weechat_config_boolean (irc_config_look_typing_status_nicks))
|
||||
{
|
||||
irc_typing_channel_set_nick (ptr_channel, nick,
|
||||
|
||||
@@ -423,8 +423,8 @@ char *
|
||||
irc_server_eval_fingerprint (struct t_irc_server *server)
|
||||
{
|
||||
const char *ptr_fingerprint;
|
||||
char *fingerprint_eval, **fingerprints, *str_sizes;
|
||||
int i, j, rc, algo, length;
|
||||
char *fingerprint_eval, **fingerprints, *str_sizes, **ptr;
|
||||
int i, rc, algo, length;
|
||||
|
||||
ptr_fingerprint = IRC_SERVER_OPTION_STRING(server,
|
||||
IRC_SERVER_OPTION_SSL_FINGERPRINT);
|
||||
@@ -459,18 +459,18 @@ irc_server_eval_fingerprint (struct t_irc_server *server)
|
||||
return fingerprint_eval;
|
||||
|
||||
rc = 0;
|
||||
for (i = 0; fingerprints[i]; i++)
|
||||
for (ptr = fingerprints; *ptr; ptr++)
|
||||
{
|
||||
length = strlen (fingerprints[i]);
|
||||
length = strlen (*ptr);
|
||||
algo = irc_server_fingerprint_search_algo_with_size (length * 4);
|
||||
if (algo < 0)
|
||||
{
|
||||
rc = -1;
|
||||
break;
|
||||
}
|
||||
for (j = 0; j < length; j++)
|
||||
for (i = 0; i < length; i++)
|
||||
{
|
||||
if (!isxdigit ((unsigned char)fingerprints[i][j]))
|
||||
if (!isxdigit ((unsigned char)((*ptr)[i])))
|
||||
{
|
||||
rc = -2;
|
||||
break;
|
||||
@@ -4625,7 +4625,7 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
const char *good_fingerprints)
|
||||
{
|
||||
unsigned char *fingerprint_server[IRC_FINGERPRINT_NUM_ALGOS];
|
||||
char **fingerprints;
|
||||
char **fingerprints, **ptr_fingerprint;
|
||||
int i, rc, algo;
|
||||
size_t size_bits, size_bytes;
|
||||
|
||||
@@ -4645,9 +4645,9 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
|
||||
rc = 0;
|
||||
|
||||
for (i = 0; fingerprints[i]; i++)
|
||||
for (ptr_fingerprint = fingerprints; *ptr_fingerprint; ptr_fingerprint++)
|
||||
{
|
||||
size_bits = strlen (fingerprints[i]) * 4;
|
||||
size_bits = strlen (*ptr_fingerprint) * 4;
|
||||
size_bytes = size_bits / 8;
|
||||
|
||||
algo = irc_server_fingerprint_search_algo_with_size (size_bits);
|
||||
@@ -4689,7 +4689,7 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
if (fingerprint_server[algo])
|
||||
{
|
||||
/* check if the fingerprint matches */
|
||||
if (irc_server_compare_fingerprints (fingerprints[i],
|
||||
if (irc_server_compare_fingerprints (*ptr_fingerprint,
|
||||
fingerprint_server[algo],
|
||||
size_bytes) == 0)
|
||||
{
|
||||
|
||||
@@ -39,7 +39,7 @@ WEECHAT_PLUGIN_DESCRIPTION("Support of javascript scripts");
|
||||
WEECHAT_PLUGIN_AUTHOR("Koka El Kiwi <kokakiwi@kokakiwi.net>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4006);
|
||||
WEECHAT_PLUGIN_PRIORITY(4060);
|
||||
|
||||
struct t_weechat_plugin *weechat_js_plugin = NULL;
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of lua scripts"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4005);
|
||||
WEECHAT_PLUGIN_PRIORITY(4050);
|
||||
|
||||
struct t_weechat_plugin *weechat_lua_plugin = NULL;
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of perl scripts"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4004);
|
||||
WEECHAT_PLUGIN_PRIORITY(4040);
|
||||
|
||||
struct t_weechat_plugin *weechat_perl_plugin = NULL;
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of PHP scripts"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Adam Saponara <as@php.net>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4003);
|
||||
WEECHAT_PLUGIN_PRIORITY(4030);
|
||||
|
||||
struct t_weechat_plugin *weechat_php_plugin = NULL;
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of python scripts"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4002);
|
||||
WEECHAT_PLUGIN_PRIORITY(4020);
|
||||
|
||||
struct t_weechat_plugin *weechat_python_plugin = NULL;
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ set(LINK_LIBS)
|
||||
include_directories(${GNUTLS_INCLUDE_PATH})
|
||||
list(APPEND LINK_LIBS ${GNUTLS_LIBRARY})
|
||||
|
||||
list(APPEND LINK_LIBS ${GCRYPT_LDFLAGS})
|
||||
list(APPEND LINK_LIBS ${LIBGCRYPT_LDFLAGS})
|
||||
|
||||
list(APPEND LINK_LIBS ${ZLIB_LIBRARY})
|
||||
|
||||
|
||||
@@ -229,8 +229,9 @@ relay_weechat_protocol_handshake_reply (struct t_relay_client *client,
|
||||
|
||||
RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
{
|
||||
char **options, **auths, **compressions, *pos;
|
||||
int i, j, index_hash_algo, hash_algo_found, auth_allowed, compression;
|
||||
char **options, **auths, **compressions, *pos, **ptr_option, **ptr_auth;
|
||||
char **ptr_comp;
|
||||
int index_hash_algo, hash_algo_found, auth_allowed, compression;
|
||||
int password_received, plain_text_password;
|
||||
|
||||
RELAY_WEECHAT_PROTOCOL_MIN_ARGS(0);
|
||||
@@ -252,14 +253,14 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
weechat_string_split_command (argv_eol[0], ',') : NULL;
|
||||
if (options)
|
||||
{
|
||||
for (i = 0; options[i]; i++)
|
||||
for (ptr_option = options; *ptr_option; ptr_option++)
|
||||
{
|
||||
pos = strchr (options[i], '=');
|
||||
pos = strchr (*ptr_option, '=');
|
||||
if (pos)
|
||||
{
|
||||
pos[0] = '\0';
|
||||
pos++;
|
||||
if (strcmp (options[i], "password_hash_algo") == 0)
|
||||
if (strcmp (*ptr_option, "password_hash_algo") == 0)
|
||||
{
|
||||
password_received = 1;
|
||||
auths = weechat_string_split (
|
||||
@@ -273,10 +274,9 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
NULL);
|
||||
if (auths)
|
||||
{
|
||||
for (j = 0; auths[j]; j++)
|
||||
for (ptr_auth = auths; *ptr_auth; ptr_auth++)
|
||||
{
|
||||
index_hash_algo = relay_auth_password_hash_algo_search (
|
||||
auths[j]);
|
||||
index_hash_algo = relay_auth_password_hash_algo_search (*ptr_auth);
|
||||
if ((index_hash_algo >= 0) && (index_hash_algo > hash_algo_found))
|
||||
{
|
||||
auth_allowed = weechat_string_match_list (
|
||||
@@ -290,7 +290,7 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
weechat_string_free_split (auths);
|
||||
}
|
||||
}
|
||||
else if (strcmp (options[i], "compression") == 0)
|
||||
else if (strcmp (*ptr_option, "compression") == 0)
|
||||
{
|
||||
compressions = weechat_string_split (
|
||||
pos,
|
||||
@@ -303,9 +303,9 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
NULL);
|
||||
if (compressions)
|
||||
{
|
||||
for (j = 0; compressions[j]; j++)
|
||||
for (ptr_comp = compressions; *ptr_comp; ptr_comp++)
|
||||
{
|
||||
compression = relay_weechat_compression_search (compressions[j]);
|
||||
compression = relay_weechat_compression_search (*ptr_comp);
|
||||
if (compression >= 0)
|
||||
{
|
||||
RELAY_WEECHAT_DATA(client, compression) = compression;
|
||||
@@ -365,8 +365,9 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(handshake)
|
||||
|
||||
RELAY_WEECHAT_PROTOCOL_CALLBACK(init)
|
||||
{
|
||||
char **options, *pos, *relay_password, *totp_secret, *info_totp_args, *info_totp;
|
||||
int i, length, password_received, totp_received;
|
||||
char **options, *pos, *relay_password, *totp_secret;
|
||||
char *info_totp_args, *info_totp, **ptr_option;
|
||||
int length, password_received, totp_received;
|
||||
|
||||
RELAY_WEECHAT_PROTOCOL_MIN_ARGS(0);
|
||||
|
||||
@@ -384,26 +385,26 @@ RELAY_WEECHAT_PROTOCOL_CALLBACK(init)
|
||||
weechat_string_split_command (argv_eol[0], ',') : NULL;
|
||||
if (options)
|
||||
{
|
||||
for (i = 0; options[i]; i++)
|
||||
for (ptr_option = options; *ptr_option; ptr_option++)
|
||||
{
|
||||
pos = strchr (options[i], '=');
|
||||
pos = strchr (*ptr_option, '=');
|
||||
if (pos)
|
||||
{
|
||||
pos[0] = '\0';
|
||||
pos++;
|
||||
if (strcmp (options[i], "password") == 0)
|
||||
if (strcmp (*ptr_option, "password") == 0)
|
||||
{
|
||||
password_received = 1;
|
||||
if (relay_auth_password (client, pos, relay_password))
|
||||
RELAY_WEECHAT_DATA(client, password_ok) = 1;
|
||||
}
|
||||
else if (strcmp (options[i], "password_hash") == 0)
|
||||
else if (strcmp (*ptr_option, "password_hash") == 0)
|
||||
{
|
||||
password_received = 1;
|
||||
if (relay_auth_password_hash (client, pos, relay_password))
|
||||
RELAY_WEECHAT_DATA(client, password_ok) = 1;
|
||||
}
|
||||
else if (strcmp (options[i], "totp") == 0)
|
||||
else if (strcmp (*ptr_option, "totp") == 0)
|
||||
{
|
||||
totp_received = 1;
|
||||
if (totp_secret)
|
||||
|
||||
@@ -61,7 +61,7 @@ WEECHAT_PLUGIN_DESCRIPTION(N_("Support of ruby scripts"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
WEECHAT_PLUGIN_PRIORITY(4001);
|
||||
WEECHAT_PLUGIN_PRIORITY(4010);
|
||||
|
||||
struct t_weechat_plugin *weechat_ruby_plugin = NULL;
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ trigger_command_display_trigger_internal (const char *name,
|
||||
int verbose)
|
||||
{
|
||||
char str_conditions[64], str_regex[64], str_command[64], str_rc[64];
|
||||
char str_post_action[64], spaces[256];
|
||||
char str_post_action[64], spaces[256], **ptr_command;
|
||||
int i, length;
|
||||
|
||||
if (verbose >= 1)
|
||||
@@ -135,7 +135,7 @@ trigger_command_display_trigger_internal (const char *name,
|
||||
}
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands, i = 0; *ptr_command; ptr_command++, i++)
|
||||
{
|
||||
weechat_printf_date_tags (
|
||||
NULL, 0, "no_trigger",
|
||||
@@ -145,7 +145,7 @@ trigger_command_display_trigger_internal (const char *name,
|
||||
i + 1,
|
||||
weechat_color ("chat_delimiters"),
|
||||
weechat_color ("reset"),
|
||||
commands[i],
|
||||
*ptr_command,
|
||||
weechat_color ("chat_delimiters"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ set_target_properties(xfer PROPERTIES PREFIX "")
|
||||
|
||||
set(LINK_LIBS)
|
||||
|
||||
list(APPEND LINK_LIBS ${GCRYPT_LDFLAGS})
|
||||
list(APPEND LINK_LIBS ${LIBGCRYPT_LDFLAGS})
|
||||
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# link with resolv lib on macOS
|
||||
|
||||
@@ -45,7 +45,9 @@ def check(result, condition, lineno):
|
||||
def test_plugins():
|
||||
"""Test plugins functions."""
|
||||
check(weechat.plugin_get_name('') == 'core')
|
||||
check(weechat.plugin_get_name(weechat.buffer_get_pointer(weechat.buffer_search_main(), 'plugin')) == 'core')
|
||||
check(weechat.plugin_get_name(
|
||||
weechat.buffer_get_pointer(
|
||||
weechat.buffer_search_main(), 'plugin')) == 'core')
|
||||
|
||||
|
||||
def test_strings():
|
||||
@@ -385,8 +387,10 @@ def test_display():
|
||||
check(weechat.color('green') != '')
|
||||
check(weechat.color('unknown') == '')
|
||||
weechat.prnt('', '## test print core buffer')
|
||||
weechat.prnt_date_tags('', 946681200, 'tag1,tag2', '## test print_date_tags core buffer')
|
||||
weechat.prnt_date_tags('', 5680744830, 'tag1,tag2', '## test print_date_tags core buffer, year 2150')
|
||||
weechat.prnt_date_tags('', 946681200, 'tag1,tag2',
|
||||
'## test print_date_tags core buffer')
|
||||
weechat.prnt_date_tags('', 5680744830, 'tag1,tag2',
|
||||
'## test print_date_tags core buffer, year 2150')
|
||||
hdata_buffer = weechat.hdata_get('buffer')
|
||||
hdata_lines = weechat.hdata_get('lines')
|
||||
hdata_line = weechat.hdata_get('line')
|
||||
@@ -396,18 +400,23 @@ def test_display():
|
||||
line = weechat.hdata_pointer(hdata_lines, own_lines, 'last_line')
|
||||
data = weechat.hdata_pointer(hdata_line, line, 'data')
|
||||
check(weechat.hdata_time(hdata_line_data, data, 'date') == 5680744830)
|
||||
buffer = weechat.buffer_new('test_formatted', 'buffer_input_cb', '', 'buffer_close_cb', '')
|
||||
buffer = weechat.buffer_new('test_formatted',
|
||||
'buffer_input_cb', '', 'buffer_close_cb', '')
|
||||
check(buffer != '')
|
||||
check(weechat.buffer_get_integer(buffer, 'type') == 0)
|
||||
weechat.prnt(buffer, '## test print formatted buffer')
|
||||
weechat.prnt_date_tags(buffer, 946681200, 'tag1,tag2', '## test print_date_tags formatted buffer')
|
||||
weechat.prnt_date_tags(buffer, 946681200, 'tag1,tag2',
|
||||
'## test print_date_tags formatted buffer')
|
||||
weechat.buffer_close(buffer)
|
||||
buffer = weechat.buffer_new_props('test_free', {'type': 'free'}, 'buffer_input_cb', '', 'buffer_close_cb', '')
|
||||
buffer = weechat.buffer_new_props('test_free', {'type': 'free'},
|
||||
'buffer_input_cb', '', 'buffer_close_cb', '')
|
||||
check(weechat.buffer_get_integer(buffer, 'type') == 1)
|
||||
check(buffer != '')
|
||||
weechat.prnt_y(buffer, 0, '## test print_y free buffer')
|
||||
weechat.prnt_y_date_tags(buffer, 0, 946681200, 'tag1,tag2', '## test print_y_date_tags free buffer')
|
||||
weechat.prnt_y_date_tags(buffer, 1, 5680744830, 'tag1,tag2', '## test print_y_date_tags free buffer, year 2150')
|
||||
weechat.prnt_y_date_tags(buffer, 0, 946681200, 'tag1,tag2',
|
||||
'## test print_y_date_tags free buffer')
|
||||
weechat.prnt_y_date_tags(buffer, 1, 5680744830, 'tag1,tag2',
|
||||
'## test print_y_date_tags free buffer, year 2150')
|
||||
weechat.buffer_close(buffer)
|
||||
|
||||
|
||||
@@ -558,7 +567,8 @@ def test_hdata():
|
||||
check(weechat.hdata_get_var_array_size(hdata_buffer, buffer2, 'highlight_tags_array') >= 0)
|
||||
# hdata_get_var_array_size_string
|
||||
check(weechat.hdata_get_var_array_size_string(hdata_buffer, buffer2, 'name') == '')
|
||||
check(weechat.hdata_get_var_array_size_string(hdata_buffer, buffer2, 'highlight_tags_array') == 'highlight_tags_count')
|
||||
check(weechat.hdata_get_var_array_size_string(
|
||||
hdata_buffer, buffer2, 'highlight_tags_array') == 'highlight_tags_count')
|
||||
# hdata_get_var_hdata
|
||||
check(weechat.hdata_get_var_hdata(hdata_buffer, 'plugin') == 'plugin')
|
||||
check(weechat.hdata_get_var_hdata(hdata_buffer, 'own_lines') == 'lines')
|
||||
|
||||
@@ -50,7 +50,7 @@ sys.dont_write_bytecode = True
|
||||
|
||||
SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
|
||||
sys.path.append(SCRIPT_DIR)
|
||||
from unparse import (
|
||||
from unparse import ( # noqa: E402
|
||||
UnparsePython,
|
||||
UnparsePerl,
|
||||
UnparseRuby,
|
||||
|
||||
@@ -139,11 +139,13 @@ class UnparsePython(object):
|
||||
result.append(value)
|
||||
return result
|
||||
|
||||
def is_bool(self, node): # pylint: disable=no-self-use
|
||||
@staticmethod
|
||||
def is_bool(node):
|
||||
"""Check if the node is a boolean."""
|
||||
return isinstance(node, ast.Name) and node.id in ('False', 'True')
|
||||
|
||||
def is_number(self, node): # pylint: disable=no-self-use
|
||||
@staticmethod
|
||||
def is_number(node):
|
||||
"""Check if the node is a number."""
|
||||
return (isinstance(node, ast.Num) or
|
||||
(isinstance(node, ast.UnaryOp) and
|
||||
|
||||
@@ -244,4 +244,9 @@ TEST(CoreUtil, VersionNumber)
|
||||
LONGS_EQUAL(0x01010100, util_version_number ("1.1.1"));
|
||||
LONGS_EQUAL(0x01010200, util_version_number ("1.1.2"));
|
||||
LONGS_EQUAL(0x01020304, util_version_number ("1.2.3.4"));
|
||||
LONGS_EQUAL(0x7EFFFFFF, util_version_number ("126.255.255.255"));
|
||||
LONGS_EQUAL(0x7FFFFFFF, util_version_number ("127.255.255.255"));
|
||||
LONGS_EQUAL(0x7FFFFFFF, util_version_number ("128.255.255.255"));
|
||||
LONGS_EQUAL(0x7FFFFFFF, util_version_number ("255.255.255.255"));
|
||||
LONGS_EQUAL(0x7FFFFFFF, util_version_number ("999999999.999999999.999999999.999999999"));;
|
||||
}
|
||||
|
||||
@@ -38,12 +38,12 @@
|
||||
#
|
||||
# Examples:
|
||||
#
|
||||
# …/build-debian.sh devel debian/sid
|
||||
# …/build-debian.sh stable debian/bullseye
|
||||
# …/build-debian.sh 1.9 ubuntu/jammy
|
||||
# …/build-debian.sh 1.9-2 ubuntu/focal
|
||||
# …/build_debian.sh devel debian/sid
|
||||
# …/build_debian.sh stable debian/bullseye
|
||||
# …/build_debian.sh 1.9 ubuntu/jammy
|
||||
# …/build_debian.sh 1.9-2 ubuntu/focal
|
||||
#
|
||||
# …/build-debian.sh test-patches
|
||||
# …/build_debian.sh test-patches
|
||||
#
|
||||
# Environment variables that can be used:
|
||||
#
|
||||
@@ -110,11 +110,13 @@ test_patches ()
|
||||
PATCHES_OK=0
|
||||
PATCHES_ERROR=0
|
||||
for file in "${ROOT_DIR}"/tools/debian/patches/*.patch; do
|
||||
echo "=== Testing patch ${file} ==="
|
||||
if git apply --check "${file}"; then
|
||||
PATCHES_OK=$((PATCHES_OK+1))
|
||||
else
|
||||
PATCHES_ERROR=$((PATCHES_ERROR+1))
|
||||
if [ -f "${file}" ]; then
|
||||
echo "=== Testing patch ${file} ==="
|
||||
if git apply --check "${file}"; then
|
||||
PATCHES_OK=$((PATCHES_OK+1))
|
||||
else
|
||||
PATCHES_ERROR=$((PATCHES_ERROR+1))
|
||||
fi
|
||||
fi
|
||||
done
|
||||
echo "Patches: ${PATCHES_OK} OK, ${PATCHES_ERROR} in error."
|
||||
@@ -146,7 +148,6 @@ if [ $# -eq 0 ]; then
|
||||
fi
|
||||
if [ "$1" = "test-patches" ]; then
|
||||
test_patches
|
||||
exit 0
|
||||
fi
|
||||
if [ $# -lt 2 ]; then
|
||||
error_usage "missing arguments"
|
||||
@@ -247,7 +248,7 @@ echo " - Updating changelog: ${DEB_NAME} ${DEB_VERSION} (${DCH_DISTRO}, ${DCH_UR
|
||||
DEBFULLNAME="${PACKAGER_NAME}" DEBEMAIL="${PACKAGER_EMAIL}" dch "${DCH_CREATE}" --package "${DEB_NAME}" --newversion "${DEB_VERSION}" --distribution "${DCH_DISTRO}" --urgency "${DCH_URGENCY}" "${DCH_CHANGELOG}"
|
||||
|
||||
# build packages (without debug symbols)
|
||||
DEB_BUILD_OPTIONS="noddebs" dpkg-buildpackage -us -uc -j${JOBS} --source-option="--tar-ignore=.git" --source-option="--tar-ignore=build*"
|
||||
DEB_BUILD_OPTIONS="noddebs" dpkg-buildpackage -us -uc --jobs="${JOBS}" --source-option="--tar-ignore=.git" --source-option="--tar-ignore=build*"
|
||||
|
||||
# all OK!
|
||||
echo " - Build OK [${DEB_NAME}-${DEB_VERSION}]"
|
||||
@@ -24,26 +24,20 @@
|
||||
# - BUILDARGS: arguments for cmake or configure commands
|
||||
#
|
||||
# Syntax to run the script with environment variables:
|
||||
# BUILDTOOL=cmake ./build-test.sh
|
||||
# BUILDTOOL=autotools ./build-test.sh
|
||||
# BUILDTOOL=cmake BUILDARGS="arguments" ./build-test.sh
|
||||
# BUILDTOOL=autotools BUILDARGS="arguments" ./build-test.sh
|
||||
# BUILDTOOL=cmake ./build_test.sh
|
||||
# BUILDTOOL=autotools ./build_test.sh
|
||||
# BUILDTOOL=cmake BUILDARGS="arguments" ./build_test.sh
|
||||
# BUILDTOOL=autotools BUILDARGS="arguments" ./build_test.sh
|
||||
#
|
||||
# Syntax to run the script with arguments on command line:
|
||||
# ./build-test.sh cmake [arguments]
|
||||
# ./build-test.sh autotools [arguments]
|
||||
# ./build_test.sh cmake [arguments]
|
||||
# ./build_test.sh autotools [arguments]
|
||||
#
|
||||
# This script is used to build WeeChat in CI environment.
|
||||
#
|
||||
|
||||
run ()
|
||||
{
|
||||
echo "Running \"$*\"..."
|
||||
if ! eval "$@"; then
|
||||
echo "ERROR"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
# exit on any error
|
||||
set -e
|
||||
|
||||
BUILDDIR="build-tmp-$$"
|
||||
|
||||
@@ -61,32 +55,40 @@ if [ -z "$BUILDTOOL" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
run ()
|
||||
{
|
||||
"$@"
|
||||
}
|
||||
|
||||
# display commands
|
||||
set -x
|
||||
|
||||
# create build directory
|
||||
run "mkdir $BUILDDIR"
|
||||
run "cd $BUILDDIR"
|
||||
mkdir "$BUILDDIR"
|
||||
cd "$BUILDDIR"
|
||||
|
||||
if [ "$BUILDTOOL" = "cmake" ]; then
|
||||
# build with CMake
|
||||
run "cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_TESTS=ON ${BUILDARGS}"
|
||||
run cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_TESTS=ON "${BUILDARGS}"
|
||||
if [ -f "build.ninja" ]; then
|
||||
run "ninja -v"
|
||||
run "ninja -v changelog"
|
||||
run "ninja -v rn"
|
||||
run "sudo ninja install"
|
||||
ninja -v
|
||||
ninja -v changelog
|
||||
ninja -v rn
|
||||
sudo ninja install
|
||||
else
|
||||
run "make VERBOSE=1 -j$(nproc)"
|
||||
run "make VERBOSE=1 changelog"
|
||||
run "make VERBOSE=1 rn"
|
||||
run "sudo make install"
|
||||
make VERBOSE=1 --jobs="$(nproc)"
|
||||
make VERBOSE=1 changelog
|
||||
make VERBOSE=1 rn
|
||||
sudo make install
|
||||
fi
|
||||
run "ctest -V"
|
||||
ctest -V
|
||||
fi
|
||||
|
||||
if [ "$BUILDTOOL" = "autotools" ]; then
|
||||
# build with autotools
|
||||
run "../autogen.sh"
|
||||
run "../configure --enable-man --enable-doc --enable-tests ${BUILDARGS}"
|
||||
run "make -j$(nproc)"
|
||||
run "sudo make install"
|
||||
run "./tests/tests -v"
|
||||
../autogen.sh
|
||||
run ../configure --enable-man --enable-doc --enable-tests "${BUILDARGS}"
|
||||
make --jobs="$(nproc)"
|
||||
sudo make install
|
||||
./tests/tests -v
|
||||
fi
|
||||
Executable
+278
@@ -0,0 +1,278 @@
|
||||
#!/usr/bin/env python3
|
||||
#
|
||||
# Copyright (C) 2023 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
"""
|
||||
Check if Curl symbols defined in src/core/wee-url.c are matching symbols
|
||||
defined in Curl (introduced/deprecated/last versions), using this file:
|
||||
https://github.com/curl/curl/blob/master/docs/libcurl/symbols-in-versions.
|
||||
|
||||
File symbols-in-versions must be passed as stdin to the script.
|
||||
|
||||
Usage example:
|
||||
|
||||
```
|
||||
URL=https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions
|
||||
curl $URL | ./check_curl_symbols.py
|
||||
```
|
||||
|
||||
Or with Curl repository cloned locally:
|
||||
|
||||
```
|
||||
./check_curl_symbols.py < /path/to/curl/docs/libcurl/symbols-in-versions
|
||||
```
|
||||
|
||||
This script requires Python 3.7+.
|
||||
"""
|
||||
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from typing import Dict, List, TextIO, Tuple
|
||||
|
||||
import re
|
||||
import sys
|
||||
|
||||
SRC_PATH = (
|
||||
Path(__file__).resolve().parent.parent / "src" / "core" / "wee-url.c"
|
||||
)
|
||||
|
||||
WEECHAT_CURL_MIN_VERSION_RE = (
|
||||
r"#if LIBCURL_VERSION_NUM >= (?P<hex_min_version>0x[0-9A-F]+) "
|
||||
r"/\* (?P<str_min_version>[0-9][0-9.]+) \*/"
|
||||
)
|
||||
|
||||
WEECHAT_CURL_MIN_MAX_VERSION_RE = (
|
||||
r"#if LIBCURL_VERSION_NUM >= (?P<hex_min_version>0x[0-9A-F]+) "
|
||||
r"&& LIBCURL_VERSION_NUM < (?P<hex_max_version>0x[0-9A-F]+) "
|
||||
r"/\* (?P<str_min_version>[0-9][0-9.]+) < "
|
||||
r"(?P<str_max_version>[0-9][0-9.]+) \*/"
|
||||
)
|
||||
WEECHAT_ENDIF_RE = r"#endif"
|
||||
WEECHAT_CURL_CONSTANT_RE = (
|
||||
r" URL_DEF_CONST\((?P<prefix>[A-Z0-9_]+), (?P<name>[A-Z0-9_]+)\),"
|
||||
)
|
||||
WEECHAT_CURL_OPTION_RE = (
|
||||
r" URL_DEF_OPTION\((?P<name>[A-Z0-9_]+), (?P<type>[A-Z]+)\), "
|
||||
r"(?P<values>[A-Za-z0-9_]+)\),"
|
||||
)
|
||||
CURL_SYMBOL_RE = r"[A-Z][A-Z0-9_]"
|
||||
|
||||
|
||||
@dataclass
|
||||
class WeechatCurlSymbol:
|
||||
"""A Curl symbol declared in WeeChat."""
|
||||
|
||||
name: str
|
||||
min_curl: int = 0
|
||||
max_curl: int = 0
|
||||
line_no: int = 0
|
||||
|
||||
|
||||
def curl_version_to_int(version: str) -> int:
|
||||
"""
|
||||
Convert Curl version as string to integer.
|
||||
|
||||
:param version: version as string (eg: "7.87.0")
|
||||
:return: version as integer, eg: 481024 (== 0x075700, 0x57 == 87)
|
||||
"""
|
||||
if version == "-":
|
||||
return 0
|
||||
result = 0
|
||||
items = version.split(".")
|
||||
if len(items) < 3:
|
||||
items.append("0")
|
||||
factor = 0
|
||||
for item in reversed(items):
|
||||
result += int(item) << factor
|
||||
factor += 8
|
||||
return result
|
||||
|
||||
|
||||
def curl_version_to_str(version: int) -> str:
|
||||
"""
|
||||
Convert Curl version as integer to string.
|
||||
|
||||
:param version: version as integer, eg: 481024 (0x075700)
|
||||
:return: version as string, eg: "7.87.0"
|
||||
"""
|
||||
if version == 0:
|
||||
return "-"
|
||||
result = ""
|
||||
while version > 0:
|
||||
result = str(version & 0xFF) + "." + result
|
||||
version = version >> 8
|
||||
return result.rstrip(".")
|
||||
|
||||
|
||||
def get_curl_symbols(symbols_file: TextIO) -> Dict[str, Tuple[int, int]]:
|
||||
"""
|
||||
Parse file docs/libcurl/symbols-in-versions from Curl repository.
|
||||
|
||||
:param symbols_file: file with Curl symbols
|
||||
:return: Curl symbols as dict: {name: (version_min, version_max)}
|
||||
"""
|
||||
curl_symbol_pattern = re.compile(CURL_SYMBOL_RE)
|
||||
symbols: Dict[str, Tuple[int, int]] = {}
|
||||
if symbols_file.isatty():
|
||||
return symbols
|
||||
for line in symbols_file:
|
||||
match = re.match(curl_symbol_pattern, line)
|
||||
if match:
|
||||
name, intro, deprec, last, *_ = (line + " - -").split()
|
||||
v_max = last if last != "-" else deprec
|
||||
symbols[name] = (
|
||||
curl_version_to_int(intro),
|
||||
curl_version_to_int(v_max),
|
||||
)
|
||||
return symbols
|
||||
|
||||
|
||||
def get_weechat_curl_symbols() -> Tuple[List[WeechatCurlSymbol], int]:
|
||||
"""
|
||||
Parse Curl symbols declared in src/core/wee-url.c.
|
||||
|
||||
:return: tuple (list_symbols, errors)
|
||||
"""
|
||||
# pylint: disable=too-many-locals,too-many-statements
|
||||
min_version_pattern = re.compile(WEECHAT_CURL_MIN_VERSION_RE)
|
||||
min_max_version_pattern = re.compile(WEECHAT_CURL_MIN_MAX_VERSION_RE)
|
||||
endif_pattern = re.compile(WEECHAT_ENDIF_RE)
|
||||
constant_pattern = re.compile(WEECHAT_CURL_CONSTANT_RE)
|
||||
option_pattern = re.compile(WEECHAT_CURL_OPTION_RE)
|
||||
v_min: int = 0
|
||||
v_max: int = 0
|
||||
symbols: List[WeechatCurlSymbol] = []
|
||||
errors: int = 0
|
||||
line_no: int = 0
|
||||
with open(SRC_PATH, encoding="utf-8") as src_file:
|
||||
for line in src_file:
|
||||
line_no += 1
|
||||
# min Curl version
|
||||
match = re.match(min_version_pattern, line)
|
||||
if match:
|
||||
hex_min_vers = match["hex_min_version"]
|
||||
str_min_vers = match["str_min_version"]
|
||||
v_min, v_max = int(hex_min_vers, 0), 0
|
||||
comment_min = curl_version_to_int(str_min_vers)
|
||||
if v_min != comment_min:
|
||||
print(
|
||||
f"{SRC_PATH}:{line_no}: min version not matching "
|
||||
f"the comment: "
|
||||
f"{hex_min_vers} != {str_min_vers}"
|
||||
)
|
||||
errors += 1
|
||||
continue
|
||||
# min + max Curl version
|
||||
match = re.match(min_max_version_pattern, line)
|
||||
if match:
|
||||
hex_min_vers = match["hex_min_version"]
|
||||
hex_max_vers = match["hex_max_version"]
|
||||
str_min_vers = match["str_min_version"]
|
||||
str_max_vers = match["str_max_version"]
|
||||
v_min, v_max = int(hex_min_vers, 0), int(hex_max_vers, 0)
|
||||
comment_min = curl_version_to_int(str_min_vers)
|
||||
comment_max = curl_version_to_int(str_max_vers)
|
||||
if v_min != comment_min:
|
||||
print(
|
||||
f"{SRC_PATH}:{line_no}: min version not matching "
|
||||
f"the comment: "
|
||||
f"{hex_min_vers} != {str_min_vers}"
|
||||
)
|
||||
errors += 1
|
||||
if v_max != comment_max:
|
||||
print(
|
||||
f"{SRC_PATH}:{line_no}: max version not matching "
|
||||
f"the comment: "
|
||||
f"{hex_max_vers} != {str_max_vers}"
|
||||
)
|
||||
errors += 1
|
||||
continue
|
||||
# end of min/max Curl version
|
||||
match = re.match(endif_pattern, line)
|
||||
if match:
|
||||
v_min, v_max = 0, 0
|
||||
continue
|
||||
# Curl constant
|
||||
match = re.match(constant_pattern, line)
|
||||
if match:
|
||||
name = f"CURL{match['prefix']}_{match['name']}"
|
||||
symbols.append(WeechatCurlSymbol(name, v_min, v_max, line_no))
|
||||
continue
|
||||
# Curl option
|
||||
match = re.match(option_pattern, line)
|
||||
if match:
|
||||
symbols.append(
|
||||
WeechatCurlSymbol(match["name"], v_min, v_max, line_no)
|
||||
)
|
||||
continue
|
||||
return symbols, errors
|
||||
|
||||
|
||||
def check_symbols(
|
||||
weechat_curl_symbols: List[WeechatCurlSymbol],
|
||||
curl_symbols: Dict[str, Tuple[int, int]],
|
||||
) -> int:
|
||||
"""
|
||||
Check that symbols declared are matching Curl symbols.
|
||||
|
||||
:param weechat_curl_symbols: list of Curl symbols in WeeChat
|
||||
:param curl_symbols: list of all Curl symbols
|
||||
"""
|
||||
to_str = curl_version_to_str
|
||||
errors = 0
|
||||
for symbol in weechat_curl_symbols:
|
||||
curl_symbol = curl_symbols.get(symbol.name)
|
||||
if not curl_symbol:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: symbol {symbol.name} "
|
||||
f"not found in Curl"
|
||||
)
|
||||
errors += 1
|
||||
continue
|
||||
if symbol.min_curl != curl_symbol[0]:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: min version for "
|
||||
f"symbol {symbol.name} differs: "
|
||||
f"{to_str(symbol.min_curl)} in WeeChat, "
|
||||
f"{to_str(curl_symbol[0])} in Curl"
|
||||
)
|
||||
errors += 1
|
||||
if symbol.max_curl != curl_symbol[1]:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: max version for "
|
||||
f"symbol {symbol.name} differs: "
|
||||
f"{to_str(symbol.max_curl)} in WeeChat, "
|
||||
f"{to_str(curl_symbol[1])} in Curl"
|
||||
)
|
||||
errors += 1
|
||||
return errors
|
||||
|
||||
|
||||
def main() -> int:
|
||||
"""Check Curl symbols and return the number of errors found."""
|
||||
curl_symbols = get_curl_symbols(sys.stdin)
|
||||
if not curl_symbols:
|
||||
sys.exit("FATAL: failed to read Curl symbols on standard input")
|
||||
weechat_curl_symbols, errors = get_weechat_curl_symbols()
|
||||
errors += check_symbols(weechat_curl_symbols, curl_symbols)
|
||||
dict_err = {0: "all good!", 1: "1 error"}
|
||||
print("Curl symbols:", dict_err.get(errors, f"{errors} errors"))
|
||||
return errors
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(min(main(), 255))
|
||||
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2023 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
# WeeChat 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.
|
||||
#
|
||||
# WeeChat 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 WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
#
|
||||
# Check shell and Python scripts in WeeChat git repository using these tools:
|
||||
# - shell scripts: shellcheck
|
||||
# - Python scripts: flake8 + pylint + bandit
|
||||
#
|
||||
|
||||
# exit on any error
|
||||
set -e
|
||||
|
||||
# check git repository
|
||||
ROOT_DIR=$(git rev-parse --show-toplevel)
|
||||
cd "${ROOT_DIR}"
|
||||
|
||||
SHELL_SCRIPTS=$(git ls-files "*.sh")
|
||||
PYTHON_SCRIPTS=$(git ls-files "*.py")
|
||||
|
||||
# display commands
|
||||
set -x
|
||||
|
||||
# check shell scripts
|
||||
for script in $SHELL_SCRIPTS; do
|
||||
shellcheck "${ROOT_DIR}/$script"
|
||||
done
|
||||
|
||||
# check Python scripts
|
||||
for script in $PYTHON_SCRIPTS; do
|
||||
flake8 --max-line-length=100 --builtins=_ "${ROOT_DIR}/$script"
|
||||
pylint --additional-builtins=_ "${ROOT_DIR}/$script"
|
||||
bandit "${ROOT_DIR}/$script"
|
||||
done
|
||||
@@ -1,4 +1,4 @@
|
||||
This directory contains patches that must be applied for some old Debian/Ubuntu
|
||||
versions, in order to build Debian packages.
|
||||
|
||||
They are automatically applied by the script "tools/build-debian.sh".
|
||||
They are automatically applied by the script "tools/build_debian.sh".
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
diff --git a/debian-devel/control b/debian-devel/control
|
||||
index 1abbda247..0db73f390 100644
|
||||
--- a/debian-devel/control
|
||||
+++ b/debian-devel/control
|
||||
@@ -14,7 +14,7 @@ Build-Depends:
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
- guile-3.0-dev,
|
||||
+ guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
diff --git a/debian-stable/control b/debian-stable/control
|
||||
index 428f11ce9..dcf71da3e 100644
|
||||
--- a/debian-stable/control
|
||||
+++ b/debian-stable/control
|
||||
@@ -14,7 +14,7 @@ Build-Depends:
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
- guile-3.0-dev,
|
||||
+ guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
@@ -1,62 +0,0 @@
|
||||
diff --git a/debian-devel/compat b/debian-devel/compat
|
||||
index 48082f72f..b4de39476 100644
|
||||
--- a/debian-devel/compat
|
||||
+++ b/debian-devel/compat
|
||||
@@ -1 +1 @@
|
||||
-12
|
||||
+11
|
||||
diff --git a/debian-devel/control b/debian-devel/control
|
||||
index 1abbda247..41addd80b 100644
|
||||
--- a/debian-devel/control
|
||||
+++ b/debian-devel/control
|
||||
@@ -5,7 +5,7 @@ Maintainer: Sébastien Helleu <flashcode@flashtux.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
- debhelper (>= 12),
|
||||
+ debhelper (>= 11),
|
||||
cmake, pkg-config,
|
||||
libncursesw5-dev,
|
||||
gem2deb,
|
||||
@@ -14,8 +14,8 @@ Build-Depends:
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
- guile-3.0-dev,
|
||||
- php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
+ guile-2.2-dev,
|
||||
+ php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
diff --git a/debian-stable/compat b/debian-stable/compat
|
||||
index 48082f72f..b4de39476 100644
|
||||
--- a/debian-stable/compat
|
||||
+++ b/debian-stable/compat
|
||||
@@ -1 +1 @@
|
||||
-12
|
||||
+11
|
||||
diff --git a/debian-stable/control b/debian-stable/control
|
||||
index 428f11ce9..e88f167b8 100644
|
||||
--- a/debian-stable/control
|
||||
+++ b/debian-stable/control
|
||||
@@ -5,7 +5,7 @@ Maintainer: Emmanuel Bouthenot <kolter@debian.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
- debhelper (>= 12),
|
||||
+ debhelper (>= 11),
|
||||
cmake, pkg-config,
|
||||
libncursesw5-dev,
|
||||
gem2deb,
|
||||
@@ -14,8 +14,8 @@ Build-Depends:
|
||||
libaspell-dev,
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
- guile-3.0-dev,
|
||||
- php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
+ guile-2.2-dev,
|
||||
+ php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
@@ -22,7 +22,7 @@
|
||||
# Updates git version in config-git.h if the output of "git describe" has changed.
|
||||
#
|
||||
# Syntax:
|
||||
# git-version.sh <rootdir> <version> <headerfile>
|
||||
# set_git_version.sh <rootdir> <version> <headerfile>
|
||||
#
|
||||
# rootdir : root directory with WeeChat files (to search .git/ directory)
|
||||
# version : WeeChat version, for example 0.3.9 or 0.4.0-dev
|
||||
+3
-3
@@ -32,9 +32,9 @@
|
||||
# devel-patch the patch version of devel (e.g. 2 for version 1.4.2)
|
||||
#
|
||||
|
||||
WEECHAT_STABLE=3.7.1
|
||||
WEECHAT_DEVEL=3.8
|
||||
WEECHAT_DEVEL_FULL=3.8-rc1
|
||||
WEECHAT_STABLE=3.8
|
||||
WEECHAT_DEVEL=3.8.1
|
||||
WEECHAT_DEVEL_FULL=3.8.1-dev
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo >&2 "Syntax: $0 stable|devel|devel-full|devel-major|devel-minor|devel-patch"
|
||||
|
||||
+3
-1
@@ -23,7 +23,7 @@
|
||||
#
|
||||
|
||||
%define name weechat
|
||||
%define version 3.7.1
|
||||
%define version 3.8
|
||||
%define release 1
|
||||
|
||||
Name: %{name}
|
||||
@@ -82,6 +82,8 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_prefix}/share/icons/hicolor/512x512/apps/weechat.png
|
||||
|
||||
%changelog
|
||||
* Sun Jan 08 2023 Sébastien Helleu <flashcode@flashtux.org> 3.8-1
|
||||
- Released version 3.8
|
||||
* Fri Oct 21 2022 Sébastien Helleu <flashcode@flashtux.org> 3.7.1-1
|
||||
- Released version 3.7.1
|
||||
* Sun Oct 09 2022 Sébastien Helleu <flashcode@flashtux.org> 3.7-1
|
||||
|
||||
Reference in New Issue
Block a user