xrtHttpProxyStatusCursorInit
初始化单个 Proxy-Status 字段值游标。
void xrtHttpProxyStatusCursorInit( xhttpproxystatuscursor* pCursor );
| 参数 | 说明 |
|---|---|
| xhttpproxystatuscursor* pCursor | 游标 |
返回:初始化单个 Proxy-Status 字段值游标。
示例已编译验证
httpproxystatuscursorinit obj; xrtHttpProxyStatusCursorInit(&obj, pCursor);
xrtHttpProxyStatusFieldCursorInit
初始化跨重复 Proxy-Status 字段行游标。
void xrtHttpProxyStatusFieldCursorInit( xhttpproxystatusfieldcursor* pCursor );
| 参数 | 说明 |
|---|---|
| xhttpproxystatusfieldcursor* pCursor | 游标 |
返回:初始化跨重复 Proxy-Status 字段行游标。
示例已编译验证
httpproxystatusfieldcursorinit obj; xrtHttpProxyStatusFieldCursorInit(&obj, pCursor);
xrtHttpProxyStatusValid
严格验证完整 Proxy-Status 字段值和每个代理标识。
bool xrtHttpProxyStatusValid(xstrview Value);
| 参数 | 说明 |
|---|---|
| xstrview Value | 值 |
返回:严格验证完整 Proxy-Status 字段值和每个代理标识。
示例已编译验证
/* 严格验证完整 Proxy-Status 字段值和每个代理标识。 */ result = xrtHttpProxyStatusValid(Value);
xrtHttpProxyStatusNext
迭代一个完整 Proxy-Status 字段值。
xhttpnext xrtHttpProxyStatusNext( xstrview Value, xhttpproxystatuscursor* pCursor, xhttpproxystatus* pStatus );
| 参数 | 说明 |
|---|---|
| xstrview Value | 值 |
| xhttpproxystatuscursor* pCursor | 游标 |
| xhttpproxystatus* pStatus | 状态响应 |
返回:迭代一个完整 Proxy-Status 字段值。
示例已编译验证
/* 迭代一个完整 Proxy-Status 字段值。 */ result = xrtHttpProxyStatusNext(Value, pCursor, pStatus);
xrtHttpProxyStatusFieldNext
按线路顺序跨越全部重复 Proxy-Status 字段行。
xhttpnext xrtHttpProxyStatusFieldNext( const xhttpfield* pFields, size_t iCount, xhttpproxystatusfieldcursor* pCursor, xhttpproxystatus* pStatus );
| 参数 | 说明 |
|---|---|
| const xhttpfield* pFields | 字段数组 |
| size_t iCount | 数量 |
| xhttpproxystatusfieldcursor* pCursor | 游标 |
| xhttpproxystatus* pStatus | 状态响应 |
返回:按线路顺序跨越全部重复 Proxy-Status 字段行。
示例已编译验证
/* 按线路顺序跨越全部重复 Proxy-Status 字段行。 */ result = xrtHttpProxyStatusFieldNext(pFields, iCount, pCursor, pStatus);
xrtHttpProxyAliasCursorInit
初始化 next-hop-aliases 列表游标。
void xrtHttpProxyAliasCursorInit( xhttpproxyaliascursor* pCursor );
| 参数 | 说明 |
|---|---|
| xhttpproxyaliascursor* pCursor | 游标 |
返回:初始化 next-hop-aliases 列表游标。
示例已编译验证
httpproxyaliascursorinit obj; xrtHttpProxyAliasCursorInit(&obj, pCursor);
xrtHttpProxyAliasesValid
严格验证完整 RFC 9532 别名列表;空文本表示没有别名。
bool xrtHttpProxyAliasesValid(xstrview Aliases);
| 参数 | 说明 |
|---|---|
| xstrview Aliases | 别名列表 |
返回:严格验证完整 RFC 9532 别名列表;空文本表示没有别名。
示例已编译验证
/* 严格验证完整 RFC 9532 别名列表;空文本表示没有别名。 */ result = xrtHttpProxyAliasesValid(Aliases);
xrtHttpProxyAliasNext
零拷贝迭代一个已编码别名,首次调用先验证完整列表。
xhttpnext xrtHttpProxyAliasNext( xstrview Aliases, xhttpproxyaliascursor* pCursor, xstrview* pAlias );
| 参数 | 说明 |
|---|---|
| xstrview Aliases | 别名列表 |
| xhttpproxyaliascursor* pCursor | 游标 |
| xstrview* pAlias | 别名 |
返回:零拷贝迭代一个已编码别名,首次调用先验证完整列表。
示例已编译验证
/* 零拷贝迭代一个已编码别名,首次调用先验证完整列表。 */ result = xrtHttpProxyAliasNext(Aliases, pCursor, pAlias);
xrtHttpProxyAliasRead
百分号解码一个已编码别名;保留 RFC 9532 的反斜杠表示。
bool xrtHttpProxyAliasRead( xstrview Alias, void* pOutput, size_t iCapacity, size_t* pSize );
| 参数 | 说明 |
|---|---|
| xstrview Alias | 别名 |
| void* pOutput | 出:输出缓冲 |
| size_t iCapacity | 容量 |
| size_t* pSize | 出:大小 |
返回:百分号解码一个已编码别名;保留 RFC 9532 的反斜杠表示。
示例已编译验证
/* 百分号解码一个已编码别名;保留 RFC 9532 的反斜杠表示。 */ result = xrtHttpProxyAliasRead(Alias, pOutput, iCapacity, pSize);
xrtHttpProxyAliasWrite
把一个 RFC 9532 展示形式名称写为百分号编码别名。
bool xrtHttpProxyAliasWrite( xstrview Alias, void* pOutput, size_t iCapacity, size_t* pSize );
| 参数 | 说明 |
|---|---|
| xstrview Alias | 别名 |
| void* pOutput | 出:输出缓冲 |
| size_t iCapacity | 容量 |
| size_t* pSize | 出:大小 |
返回:把一个 RFC 9532 展示形式名称写为百分号编码别名。
示例已编译验证
/* 把一个 RFC 9532 展示形式名称写为百分号编码别名。 */ result = xrtHttpProxyAliasWrite(Alias, pOutput, iCapacity, pSize);
xrtHttpProxyAliasesWrite
把名称数组写为逗号分隔的 next-hop-aliases String 正文。
bool xrtHttpProxyAliasesWrite( const xstrview* pAliases, size_t iCount, void* pOutput, size_t iCapacity, size_t* pSize );
| 参数 | 说明 |
|---|---|
| const xstrview* pAliases | 别名列表 |
| size_t iCount | 数量 |
| void* pOutput | 出:输出缓冲 |
| size_t iCapacity | 容量 |
| size_t* pSize | 出:大小 |
返回:把名称数组写为逗号分隔的 next-hop-aliases String 正文。
示例已编译验证
/* 把名称数组写为逗号分隔的 next-hop-aliases String 正文。 */ result = xrtHttpProxyAliasesWrite(pAliases, iCount, pOutput, iCapacity, pSize);
xrtHttpProxyAliasesBuild
构建零结尾别名列表;返回值由 xrtFree 释放。
str xrtHttpProxyAliasesBuild( const xstrview* pAliases, size_t iCount, size_t* pSize );
| 参数 | 说明 |
|---|---|
| const xstrview* pAliases | 别名列表 |
| size_t iCount | 数量 |
| size_t* pSize | 出:大小 |
返回:构建零结尾别名列表;返回值由 xrtFree 释放。
示例已编译验证
/* 构建零结尾别名列表;返回值由 xrtFree 释放。 */ result = xrtHttpProxyAliasesBuild(pAliases, iCount, pSize);
xrtHttpProxyStatusWrite
规范写出一个 Proxy-Status 成员,适合追加独立字段行。
bool xrtHttpProxyStatusWrite( const xhttpstructureditemvalue* pStatus, void* pOutput, size_t iCapacity, size_t* pSize );
| 参数 | 说明 |
|---|---|
| const xhttpstructureditemvalue* pStatus | 状态响应 |
| void* pOutput | 出:输出缓冲 |
| size_t iCapacity | 容量 |
| size_t* pSize | 出:大小 |
返回:规范写出一个 Proxy-Status 成员,适合追加独立字段行。
示例已编译验证
/* 规范写出一个 Proxy-Status 成员,适合追加独立字段行。 */ result = xrtHttpProxyStatusWrite(pStatus, pOutput, iCapacity, pSize);