KCGI ist eine Open -Source -CGI- und FastCGI -Bibliothek für C/C ++ - Webanwendungen. Es ist minimal, sicher, prüfbar und passt in Ihren BCHS -Software -Stack.
Um über die aktuelle stabile Veröffentlichung von KCGI auf dem Laufenden zu bleiben, besuchen Sie https://kristaps.bsd.lv/kcgi. Die Website enthält auch kanonische Installation, Bereitstellung, Beispiele und Nutzungsdokumentation.
Sie benötigen einen C-Compiler (GCC oder Clang), ZLIB ( ZLIB oder ZLIB-DEV für einige Paketmanager) und BSD Make ( BMAKE für einige Manager) zum Bau.
Bei einigen Linux-Systemen benötigen Sie möglicherweise die Linux-Kernel-Header, die mit dem Linux-Header- Paket oder ähnlichem installiert sind.
Beginnen Sie mit Klonen oder Herunterladen. Konfigurieren Sie dann mit ./configure , kompilieren Sie mit make (bsd make, sodass es auf Ihrem System bmake sein kann) und make install (oder verwenden Sie sudo oder doas , falls zutreffend). Um in einem alternativen Verzeichnis nach /usr/local zu installieren, setzen Sie die PREFIX , wenn Sie configure ausführen.
./configure PREFIX= ~ /.local
make
make installEine gemeinsame Idiom für die Bereitstellung unter Linux besteht darin, Libbsd zu verwenden, wie in der Oconfigure -Dokumentation angegeben:
CFLAGS=$(pkg-config --cflags libbsd-overlay)
./configure LDFLAGS=$(pkg-config --libs libbsd-overlay)
make
make install
Es ist nützlich, die installierten Regressionstests auf den Quellen der Blutungskante auszuführen. (Auch dies verwendet BSD MAIME, sodass es in Ihrem System bmake sein kann.) Sie müssen libcurl installiert ( curl-dev , libcurl-dev oder libcurl4-openSsl-dev mit einigen Paketmanagern).
make regress Das System enthält eine vollständige Regressionsuite und ist auch für die Arbeit mit AFL gebaut. Verwenden Sie die in das afl -Verzeichnis zusammengestellten Binärdateien, um einige der gebündelten Tests durchzuführen. (Auch dies verwendet BSD Make, sodass es bmake in Ihrem System sein kann.)
make afl
cd afl
afl-fuzz -i in/urlencoded -o out -- ./afl-urlencodedDas öffentliche Github-Repository-Repository für KCGI verwendet automatisierte Tests bei jedem Check-in, um die Regressionstests auszuführen. Diese automatisierten Tests richten sich hauptsächlich an Linux, deren Sicherheitsmechanismus eine ständige Wartung erfordert. Die folgenden Systeme werden überprüft:
Die Entwicklung erfolgt in erster Linie OpenBSD.
Diese werden auch wöchentlich durchgeführt, um Änderungen zu erfassen, da neue Betriebssystemfunktionen ins Spiel kommen.
Alle Quellen verwenden die ISC -Lizenz (wie OpenBSD). Weitere Informationen finden Sie in der Datei lizenz.md.