aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: de4e49fb064872bdf9df0ca9f8c71f6b135938e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
neo-curl arrives from the future
================================

Drop-in replacement for the [neocurl] SourceMod extension, in turn a drop-in
replacement for the ancient [SourceMod cURL] extension.

* Builds with AMBuild instead of make, if for no other reason than to get
  cflags straight from the horse's mouth.
* Gets rid of vendored OpenSSL and cURL, and their
  _vendored binary dependencies_.
* Gets rid of `smsdk_ext.{c,h}` as those can be referenced from SourceMod.

Building
--------

    python configure.py --mms-path /path/metamod --sm-path /path/sourcemod
    ambuild

Requirements:

* AMBuild
* SourceMod
* MetaMod: Source
* pkg-config, which should be able to find 32-bit:
  * openssl
  * libcurl, which for parity with neocurl, should apparently be built with at
    least:
    * brotli
    * zlib
    * zstd
    * gsasl
    * nghttp2
    * ngtcp2
    * ssh2
    * openssl >= 3.3 for QUIC

Upon success, you will find `build/package/addons`, ready to overlay on your
server directory.

Releases
--------

* statically linked releases would be [irresponsible]
* dynamically linked releases would be [pointless]

sorry mate just build it yourself

Licensing
---------

tl;dr GPL3 with AlliedModders exceptions; see COPYING for more details. To the
best of my knowledge, OpenSSL and cURL present no licensing incompatibilities
via linkage.

[neocurl]: https://github.com/sapphonie/SM-neocurl-ext
[SourceMod cURL]: https://code.google.com/archive/p/sourcemod-curl-extension
[irresponsible]: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=openssl
[pointless]: https://blog.hiler.eu/win32-the-only-stable-abi/