diff options
| author | Dirk Engling <erdgeist@erdgeist.org> | 2026-10-26 18:13:27 +0100 |
|---|---|---|
| committer | Dirk Engling <erdgeist@erdgeist.org> | 2026-10-26 18:13:27 +0100 |
| commit | 78c3cebc389a2b0d426d74900a65b8656edb426d (patch) | |
| tree | 122003fecc6b53c2dde6393896a852e3689900ff /ot_http.c | |
| parent | 6837c5ac80e3624c6dc3a82d03e50d68b2f5a989 (diff) | |
Third run of making variable and function names more readable, integer scans and ip parsers
Diffstat (limited to 'ot_http.c')
| -rw-r--r-- | ot_http.c | 23 |
1 files changed, 12 insertions, 11 deletions
| @@ -482,7 +482,8 @@ static ot_keywords keywords_announce[] = {{"port", 1}, {"left", 2}, {"event", | |||
| 482 | static ot_keywords keywords_announce_event[] = {{"completed", 1}, {"stopped", 2}, {NULL, -3}}; | 482 | static ot_keywords keywords_announce_event[] = {{"completed", 1}, {"stopped", 2}, {NULL, -3}}; |
| 483 | static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct *ws, char *read_ptr) { | 483 | static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct *ws, char *read_ptr) { |
| 484 | size_t numwant; | 484 | size_t numwant; |
| 485 | int tmp, scanon; | 485 | int64_t tmp; |
| 486 | int scanon; | ||
| 486 | unsigned short port = 0; | 487 | unsigned short port = 0; |
| 487 | char *write_ptr; | 488 | char *write_ptr; |
| 488 | ssize_t len; | 489 | ssize_t len; |
| @@ -501,7 +502,7 @@ static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct | |||
| 501 | if (accesslist_is_blessed(cookie->ip, OT_PERMISSION_MAY_PROXY)) { | 502 | if (accesslist_is_blessed(cookie->ip, OT_PERMISSION_MAY_PROXY)) { |
| 502 | ot_ip6 proxied_ip; | 503 | ot_ip6 proxied_ip; |
| 503 | char *fwd = http_header(ws->request, ws->header_size, "x-forwarded-for"); | 504 | char *fwd = http_header(ws->request, ws->header_size, "x-forwarded-for"); |
| 504 | if (fwd && ip_scan(fwd, proxied_ip)) { | 505 | if (fwd && ip_parse(fwd, proxied_ip)) { |
| 505 | OT_SETIP(ws->peer, proxied_ip); | 506 | OT_SETIP(ws->peer, proxied_ip); |
| 506 | } else | 507 | } else |
| 507 | OT_SETIP(ws->peer, cookie->ip); | 508 | OT_SETIP(ws->peer, cookie->ip); |
| @@ -529,15 +530,15 @@ static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct | |||
| 529 | break; | 530 | break; |
| 530 | case 1: /* matched "port" */ | 531 | case 1: /* matched "port" */ |
| 531 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); | 532 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); |
| 532 | if ((len <= 0) || scan_fixed_int(write_ptr, len, &tmp) || (tmp > 0xffff)) | 533 | if ((len <= 0) || scan_int(write_ptr, len, &tmp) || (tmp > 0xffff)) |
| 533 | HTTPERROR_400_PARAM; | 534 | HTTPERROR_400_PARAM; |
| 534 | port = htons(tmp); | 535 | port = htons((uint16_t)tmp); |
| 535 | OT_SETPORT(&ws->peer, &port); | 536 | OT_SETPORT(&ws->peer, &port); |
| 536 | break; | 537 | break; |
| 537 | case 2: /* matched "left" */ | 538 | case 2: /* matched "left" */ |
| 538 | if ((len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE)) <= 0) | 539 | if ((len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE)) <= 0) |
| 539 | HTTPERROR_400_PARAM; | 540 | HTTPERROR_400_PARAM; |
| 540 | if (scan_fixed_int(write_ptr, len, &tmp)) | 541 | if (scan_int(write_ptr, len, &tmp)) |
| 541 | tmp = 0; | 542 | tmp = 0; |
| 542 | if (!tmp) | 543 | if (!tmp) |
| 543 | OT_PEERFLAG(&ws->peer) |= PEER_FLAG_SEEDING; | 544 | OT_PEERFLAG(&ws->peer) |= PEER_FLAG_SEEDING; |
| @@ -558,17 +559,17 @@ static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct | |||
| 558 | break; | 559 | break; |
| 559 | case 4: /* matched "numwant" */ | 560 | case 4: /* matched "numwant" */ |
| 560 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); | 561 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); |
| 561 | if ((len <= 0) || scan_fixed_int(write_ptr, len, &tmp)) | 562 | if ((len <= 0) || scan_int(write_ptr, len, &tmp)) |
| 562 | HTTPERROR_400_PARAM; | 563 | HTTPERROR_400_PARAM; |
| 563 | if (tmp < 0) | 564 | if (tmp < 0) |
| 564 | tmp = 50; | 565 | tmp = 50; |
| 565 | if (tmp > 200) | 566 | if (tmp > 200) |
| 566 | tmp = 200; | 567 | tmp = 200; |
| 567 | numwant = tmp; | 568 | numwant = (size_t)tmp; |
| 568 | break; | 569 | break; |
| 569 | case 5: /* matched "compact" */ | 570 | case 5: /* matched "compact" */ |
| 570 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); | 571 | len = urlencoded_parse(&read_ptr, write_ptr = read_ptr, SCAN_SEARCHPATH_VALUE); |
| 571 | if ((len <= 0) || scan_fixed_int(write_ptr, len, &tmp)) | 572 | if ((len <= 0) || scan_int(write_ptr, len, &tmp)) |
| 572 | HTTPERROR_400_PARAM; | 573 | HTTPERROR_400_PARAM; |
| 573 | if (!tmp) | 574 | if (!tmp) |
| 574 | HTTPERROR_400_COMPACT; | 575 | HTTPERROR_400_COMPACT; |
| @@ -587,7 +588,7 @@ static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct | |||
| 587 | char *tmp_buf1 = ws->reply, *tmp_buf2 = ws->reply + 16; | 588 | char *tmp_buf1 = ws->reply, *tmp_buf2 = ws->reply + 16; |
| 588 | len = urlencoded_parse(&read_ptr, tmp_buf2, SCAN_SEARCHPATH_VALUE); | 589 | len = urlencoded_parse(&read_ptr, tmp_buf2, SCAN_SEARCHPATH_VALUE); |
| 589 | tmp_buf2[len] = 0; | 590 | tmp_buf2[len] = 0; |
| 590 | if ((len <= 0) || !ip_scan(tmp_buf2, tmp_buf1)) | 591 | if ((len <= 0) || !ip_parse(tmp_buf2, tmp_buf1)) |
| 591 | HTTPERROR_400_PARAM; | 592 | HTTPERROR_400_PARAM; |
| 592 | OT_SETIP(&ws->peer, tmp_buf1); | 593 | OT_SETIP(&ws->peer, tmp_buf1); |
| 593 | } break; | 594 | } break; |
| @@ -609,13 +610,13 @@ static ssize_t http_handle_announce(const int64_t sock, struct ot_workstruct | |||
| 609 | loglist_reset(); | 610 | loglist_reset(); |
| 610 | return ws->reply_size = sprintf(ws->reply, "Successfully removed.\n"); | 611 | return ws->reply_size = sprintf(ws->reply, "Successfully removed.\n"); |
| 611 | } | 612 | } |
| 612 | parsed = ip_scan(tmp_buf, net.address); | 613 | parsed = ip_parse(tmp_buf, net.address); |
| 613 | if (!parsed) | 614 | if (!parsed) |
| 614 | HTTPERROR_400_PARAM; | 615 | HTTPERROR_400_PARAM; |
| 615 | if (tmp_buf[parsed++] != '/') | 616 | if (tmp_buf[parsed++] != '/') |
| 616 | bits = 128; | 617 | bits = 128; |
| 617 | else { | 618 | else { |
| 618 | parsed = scan_udec(tmp_buf + parsed, &value, 128); | 619 | parsed = scan_uint(tmp_buf + parsed, &value, 128); |
| 619 | if (!parsed) | 620 | if (!parsed) |
| 620 | HTTPERROR_400_PARAM; | 621 | HTTPERROR_400_PARAM; |
| 621 | bits = (signed short)value; | 622 | bits = (signed short)value; |
