Skip to content

Instantly share code, notes, and snippets.

View bagder's full-sized avatar
⌨️
mostly typos

Daniel Stenberg bagder

⌨️
mostly typos
View GitHub Profile
@bagder
bagder / test.md
Last active July 4, 2024 09:25
PR #14098 perf test comparison
python3 tests/http/scorecard.py --httpd --caddy -d --download=100mb h1

master

Downloads
  Server       Size  single(1x1) [cpu/rss]         serial(50x1) [cpu/rss]         parallel(50x50) [cpu/rss]                Errors       
  httpd       100MB    1239 MB/s [89.0%/14MB]         1414 MB/s [88.5%/14MB]         1781 MB/s [100.2%/18MB]              -          
  caddy       100MB    2007 MB/s [74.2%/14MB]         2573 MB/s [82.8%/15MB]         3425 MB/s [100.3%/18MB]              -          
@bagder
bagder / scorecard.md
Created December 7, 2023 12:09
perf-testing #12468

icing-cw-part5+h2

scoring h2
TLS Handshake
  curl.se...ipv4...ipv6...ok.
  google.com...ipv4...ipv6...ok.
  cloudflare.com...ipv4...ipv6...ok.
  nghttp2.org...ipv4...ipv6...ok.
httpd downloads
@bagder
bagder / compare.md
Last active November 17, 2023 16:01
URL parsers compared. libcurl vs ada
@bagder
bagder / speedada.cpp
Last active November 17, 2023 15:55
measure ada URL parsing the same way speedparse does
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
@bagder
bagder / speedparse.c
Created November 17, 2023 14:58
measure libcurl URL parsing speed
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
@bagder
bagder / scheme2num.c
Last active November 17, 2023 10:46
generate a perfect hash for curl scheme matching
#include <stdio.h>
#include <curl/curl.h>
struct detail {
const char *n;
const char *ifdef;
};
static const struct detail scheme[] = {
{"dict", "#ifndef CURL_DISABLE_DICT" },
@bagder
bagder / agenda.md
Last active October 23, 2023 07:44
A two to three hour libcurl video tutorial

This is going to become a live-stream video "class" done by Daniel in November 2023. Also recorded for Youtube of course.

The exact date/time is pending. This is the tentative agenda. What are you missing from here?

Mastering libcurl

  • The project
  • Getting libcurl
  • API and ABI
  • Architecture
@bagder
bagder / form.patch
Created September 22, 2023 13:19
formdata patch for 32 bit
diff --git a/lib/formdata.c b/lib/formdata.c
index 8984b6322..11b6f1687 100644
--- a/lib/formdata.c
+++ b/lib/formdata.c
@@ -787,10 +787,15 @@ static CURLcode setname(curl_mimepart *part, const char *name, size_t len)
res = curl_mime_name(part, zname);
free(zname);
return res;
}
@bagder
bagder / 539.patch
Created August 28, 2023 06:19
fix for lib539.c ?
diff --git a/tests/libtest/lib539.c b/tests/libtest/lib539.c
index 0e8aada4b..75f146c00 100644
--- a/tests/libtest/lib539.c
+++ b/tests/libtest/lib539.c
@@ -68,11 +68,11 @@ int test(char *URL)
return TEST_ERR_MAJOR_BAD;
}
slist = curl_slist_append(NULL, "SYST");
if(!slist) {
@bagder
bagder / h2upgrade.patch
Last active July 31, 2023 14:59
patch for Richard W.M. Jones' "Curl segfault in curl_multi_perform"
diff --git a/lib/url.c b/lib/url.c
index 73f2da4ba..8eecfc421 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -1071,10 +1071,13 @@ ConnectionExists(struct Curl_easy *data,
(needle->handler->protocol & PROTO_FAMILY_HTTP)));
#else
bool wantProxyNTLMhttp = FALSE;
#endif
#endif