mirror of
https://github.com/3proxy/3proxy.git
synced 2026-09-03 13:25:48 +08:00
pop3p, imapp and smtpp are built with MAILPROXY=true, and ftppr and the ftp:// scheme of the HTTP proxy with FTP=true; with CMake the switches are 3PROXY_USE_MAILPROXY and 3PROXY_USE_FTP. Neither is in a default build, and the standalone binaries follow what was built. A configuration naming one of them is still read either way. The three mail protocols amount to a STARTTLS negotiation now that mail is carried over TLS, so without a proxy of their own those names are tlspr speaking the protocol: the file holds a stand-in which sets the protocol for the connection and returns tlspr for the caller to run, which serves the service name and a parent chain alike and leaves conf.c and the redirect table untouched. FTP has no such fallback, so the service is known, answers nothing and logs the refusal. The Linux workflow builds both, so all of it is still compiled and run.
39 lines
1.1 KiB
YAML
39 lines
1.1 KiB
YAML
name: C/C++ CI Linux
|
|
|
|
on:
|
|
push:
|
|
paths: [ '**.c', '**.h', 'Makefile.Linux', 'tests/**', '.github/configs', '.github/workflows/c-cpp-Linux.yml' ]
|
|
pull_request:
|
|
paths: [ "**.c", "**.h", "Makefile.Linux", "tests/**", ".github/configs", ".github/workflows/c-cpp-Linux.yml" ]
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
ci:
|
|
name: "${{ matrix.target }}"
|
|
strategy:
|
|
matrix:
|
|
target:
|
|
- ubuntu-latest
|
|
- ubuntu-24.04-arm
|
|
runs-on: ${{ matrix.target }}
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
# - name: configure
|
|
# run: ./configure
|
|
- name: Linux libraries
|
|
if: ${{ startsWith(matrix.target, 'ubuntu') }}
|
|
run: sudo apt-get update && sudo apt-get install -y libssl-dev libpam-dev libpcre2-dev
|
|
- name: make
|
|
run: make -f Makefile.Linux MAILPROXY=true FTP=true
|
|
- name: regression tests
|
|
run: python3 tests/run.py
|
|
- name: mkdir
|
|
run: mkdir ~/3proxy
|
|
- name: make install
|
|
run: make -f Makefile.Linux DESTDIR=~/3proxy install
|
|
- name: make clean Linux
|
|
run: make -f Makefile.Linux clean
|