MCPcopy Create free account
hub / github.com/apache/brpc / SplitHostAndPort

Function SplitHostAndPort

src/brpc/uri.cpp:82–100  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80}
81
82inline const char* SplitHostAndPort(const char* host_begin,
83 const char* host_end,
84 int* port) {
85 uint64_t port_raw = 0;
86 uint64_t multiply = 1;
87 for (const char* q = host_end - 1; q > host_begin; --q) {
88 if (*q >= '0' && *q <= '9') {
89 port_raw += (*q - '0') * multiply;
90 multiply *= 10;
91 } else if (*q == ':') {
92 *port = static_cast<int>(port_raw);
93 return q;
94 } else {
95 break;
96 }
97 }
98 *port = -1;
99 return host_end;
100}
101
102// valid characters in URL
103// https://datatracker.ietf.org/doc/html/rfc3986#section-2.1

Callers 3

SetHttpURLMethod · 0.85
ParseURLFunction · 0.85
SetHostAndPortMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected