Skip to content

Commit

Permalink
Update cURL to v8.10.1 for fixing cURL's CVE-2024-7264 issue
Browse files Browse the repository at this point in the history
cURL v8.10.1 released source code:
https://github.com/curl/curl/archive/refs/tags/curl-8_10_1.zip

The issue CVE-2024-7264 has been fixed in curl/curl@27959ecce75cdb2

Fix #73
  • Loading branch information
donho committed Sep 19, 2024
1 parent 918e3d5 commit 2ee34a8
Show file tree
Hide file tree
Showing 3,940 changed files with 185,498 additions and 291,762 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,13 @@ How to build it?
* Step 1: You have to build cURL before building WinGUp:

1. Open VS2022 Native Tool Command for 32/64 bits. If you want to build for ARM, open a cmd, and run the following command:<br/>
`C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsamd64_arm64.bat`
2. go to curl winbuild directory:<br/>
`cd <your WinGUp source path>\curl\winbuild`
3. compile cURL by using one of the following commands, according the mode and architecture of WinGUp you want to build.
`C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsamd64_arm64.bat`
2. go to curl directory, :<br/>
`cd <your WinGUp source path>\curl\` then run:
`buildconf.bat`
3. go to winbuild directory, which is under curl directory:<br/>
`cd winbuild`
4. compile cURL by using one of the following commands, according the mode and architecture of WinGUp you want to build.
- x64 release: `nmake /f Makefile.vc mode=dll vc=15 RTLIBCFG=static MACHINE=x64`
- x64 debug: `nmake /f Makefile.vc mode=dll vc=15 RTLIBCFG=static DEBUG=yes MACHINE=x64`
- x86 release: `nmake /f Makefile.vc mode=dll vc=15 RTLIBCFG=static MACHINE=x86`
Expand Down
257 changes: 257 additions & 0 deletions curl/.circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
#***************************************************************************
# _ _ ____ _
# Project ___| | | | _ \| |
# / __| | | | |_) | |
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
# Copyright (C) Daniel Stenberg, <[email protected]>, et al.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at https://curl.se/docs/copyright.html.
#
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
# copies of the Software, and permit persons to whom the Software is
# furnished to do so, under the terms of the COPYING file.
#
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
# KIND, either express or implied.
#
# SPDX-License-Identifier: curl
#
###########################################################################

# View these jobs in the browser: https://app.circleci.com/pipelines/github/curl/curl

# Use the latest 2.1 version of CircleCI pipeline process engine. See: https://circleci.com/docs/configuration-reference/
version: 2.1

commands:
configure:
steps:
- run:
command: |
autoreconf -fi
./configure --enable-warnings --enable-werror --with-openssl \
|| { tail -1000 config.log; false; }
configure-openssl-no-verbose:
steps:
- run:
command: |
autoreconf -fi
./configure --disable-verbose --enable-werror --with-openssl \
|| { tail -1000 config.log; false; }
configure-no-proxy:
steps:
- run:
command: |
autoreconf -fi
./configure --disable-proxy --enable-werror --with-openssl \
|| { tail -1000 config.log; false; }
install-cares:
steps:
- run:
command: |
sudo apt-get update && sudo apt-get install -y libc-ares-dev
install-libssh:
steps:
- run:
command: |
sudo apt-get update && sudo apt-get install -y libssh-dev
install-deps:
steps:
- run:
command: |
sudo apt-get update && sudo apt-get install -y libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev python3-pip libpsl-dev
sudo python3 -m pip install impacket
configure-libssh:
steps:
- run:
command: |
autoreconf -fi
./configure --enable-warnings --enable-werror --with-openssl --with-libssh \
|| { tail -1000 config.log; false; }
install-wolfssl:
steps:
- run:
command: |
source .github/scripts/VERSIONS
echo "Installing wolfSSL $WOLFSSL_VER"
curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/wolfSSL/wolfssl/archive/v$WOLFSSL_VER-stable.tar.gz
tar -xzf v$WOLFSSL_VER-stable.tar.gz
cd wolfssl-$WOLFSSL_VER-stable
./autogen.sh
./configure --enable-tls13 --enable-all --enable-harden --prefix=$HOME/wssl
make install
install-wolfssh:
steps:
- run:
command: |
source .github/scripts/VERSIONS
echo "Installing wolfSSH $WOLFSSH_VER"
curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/wolfSSL/wolfssh/archive/v$WOLFSSH_VER-stable.tar.gz
tar -xzf v$WOLFSSH_VER-stable.tar.gz
cd wolfssh-$WOLFSSH_VER-stable
./autogen.sh
./configure --with-wolfssl=$HOME/wssl --prefix=$HOME/wssh --enable-scp --enable-sftp --disable-examples
make install
configure-cares:
steps:
- run:
command: |
autoreconf -fi
./configure --enable-warnings --enable-werror --with-openssl --enable-ares \
|| { tail -1000 config.log; false; }
configure-wolfssh:
steps:
- run:
command: |
autoreconf -fi
LDFLAGS="-Wl,-rpath,$HOME/wssh/lib" ./configure --enable-warnings --enable-werror --with-wolfssl=$HOME/wssl --with-wolfssh=$HOME/wssh \
|| { tail -1000 config.log; false; }
configure-cares-debug:
steps:
- run:
command: |
autoreconf -fi
./configure --enable-debug --enable-werror --with-openssl --enable-ares \
|| { tail -1000 config.log; false; }
build:
steps:
- run: make -j3 V=1
- run: make -j3 V=1 examples

test:
steps:
- run: make -j3 V=1 test-ci TFLAGS='-j14'

executors:
ubuntu:
machine:
image: ubuntu-2004:2024.01.1

jobs:
basic:
executor: ubuntu
steps:
- checkout
- install-deps
- configure
- build
- test

no-verbose:
executor: ubuntu
steps:
- checkout
- install-deps
- configure-openssl-no-verbose
- build

wolfssh:
executor: ubuntu
steps:
- checkout
- install-deps
- install-wolfssl
- install-wolfssh
- configure-wolfssh
- build

no-proxy:
executor: ubuntu
steps:
- checkout
- install-deps
- configure-no-proxy
- build
- test

cares:
executor: ubuntu
steps:
- checkout
- install-deps
- install-cares
- configure-cares
- build
- test

libssh:
executor: ubuntu
steps:
- checkout
- install-deps
- install-libssh
- configure-libssh
- build
- test

arm:
machine:
image: ubuntu-2004:2024.01.1
resource_class: arm.medium
steps:
- checkout
- install-deps
- configure
- build
- test

arm-cares:
machine:
image: ubuntu-2004:2024.01.1
resource_class: arm.medium
steps:
- checkout
- install-deps
- install-cares
- configure-cares-debug
- build
- test

workflows:
x86-openssl:
jobs:
- basic

openssl-c-ares:
jobs:
- cares

openssl-libssh:
jobs:
- libssh

openssl-no-proxy:
jobs:
- no-proxy

openssl-no-verbose:
jobs:
- no-verbose

wolfssl-wolfssh:
jobs:
- wolfssh

arm-openssl:
jobs:
- arm

arm-openssl-c-ares:
jobs:
- arm-cares
33 changes: 33 additions & 0 deletions curl/.dir-locals.el
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
;;;***************************************************************************
;;; _ _ ____ _
;;; Project ___| | | | _ \| |
;;; / __| | | | |_) | |
;;; | (__| |_| | _ <| |___
;;; \___|\___/|_| \_\_____|
;;;
;;; Copyright (C) Daniel Stenberg, <[email protected]>, et al.
;;;
;;; This software is licensed as described in the file COPYING, which
;;; you should have received as part of this distribution. The terms
;;; are also available at https://curl.se/docs/copyright.html.
;;;
;;; You may opt to use, copy, modify, merge, publish, distribute and/or sell
;;; copies of the Software, and permit persons to whom the Software is
;;; furnished to do so, under the terms of the COPYING file.
;;;
;;; This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
;;; KIND, either express or implied.
;;;
;;; SPDX-License-Identifier: curl
;;;
;;;***************************************************************************
;;; Directory Local Variables
;;; See Info node `(emacs) Directory Variables' for more information.

((nil . ((indent-tabs-mode . nil)
(show-trailing-whitespace . t)))
(c-mode . ((c-basic-offset . 2)
))
(c++-mode . ((c-basic-offset . 2)
))
)
Loading

0 comments on commit 2ee34a8

Please sign in to comment.