PROXY Protocol Builder */
| 480 | PROXY Protocol Builder |
| 481 | */ |
| 482 | size_t |
| 483 | proxy_protocol_build(uint8_t *buf, size_t max_buf_len, const ProxyProtocol &pp_info, ProxyProtocolVersion force_version) |
| 484 | { |
| 485 | ProxyProtocolVersion version = pp_info.version; |
| 486 | if (force_version != ProxyProtocolVersion::UNDEFINED) { |
| 487 | version = force_version; |
| 488 | } |
| 489 | |
| 490 | size_t len = 0; |
| 491 | |
| 492 | if (version == ProxyProtocolVersion::V1) { |
| 493 | len = proxy_protocol_v1_build(buf, max_buf_len, pp_info); |
| 494 | } else if (version == ProxyProtocolVersion::V2) { |
| 495 | len = proxy_protocol_v2_build(buf, max_buf_len, pp_info); |
| 496 | } else { |
| 497 | ink_abort("PROXY Protocol Version is undefined"); |
| 498 | } |
| 499 | |
| 500 | return len; |
| 501 | } |
| 502 | |
| 503 | ProxyProtocolVersion |
| 504 | proxy_protocol_version_cast(int i) |
no test coverage detected