xrtSshAuthGuardPolicyInit
初始化 RFC 推荐值和有界资源默认策略。
void xrtSshAuthGuardPolicyInit(xsshauthguardpolicy* pPolicy);
| 参数 | 说明 |
|---|---|
| xsshauthguardpolicy* pPolicy | 策略 |
返回:初始化 RFC 推荐值和有界资源默认策略。
示例已编译验证
sshauthguardpolicyinit obj; xrtSshAuthGuardPolicyInit(&obj, pPolicy);
xrtSshAuthGuardInit
复制显式或默认策略并开始一个认证会话。
bool xrtSshAuthGuardInit( xsshauthguard* pGuard, const xsshauthguardpolicy* pPolicy, uint64 iNowMs );
| 参数 | 说明 |
|---|---|
| xsshauthguard* pGuard | 守卫 |
| const xsshauthguardpolicy* pPolicy | 策略 |
| uint64 iNowMs | 当前毫秒时间 |
返回:复制显式或默认策略并开始一个认证会话。
示例已编译验证
sshauthguardinit obj; xrtSshAuthGuardInit(&obj, pGuard, pPolicy, iNowMs);
xrtSshAuthGuardCheck
查询当前时间、完成状态和已有预算产生的决策。
xsshcode xrtSshAuthGuardCheck( xsshauthguard* pGuard, uint64 iNowMs, xsshauthguarddecision* pDecision );
| 参数 | 说明 |
|---|---|
| xsshauthguard* pGuard | 守卫 |
| uint64 iNowMs | 当前毫秒时间 |
| xsshauthguarddecision* pDecision | Decson 参数 |
返回:查询当前时间、完成状态和已有预算产生的决策。
示例已编译验证
/* 查询当前时间、完成状态和已有预算产生的决策。 */ result = xrtSshAuthGuardCheck(pGuard, iNowMs, pDecision);
xrtSshAuthGuardReserve
原子预留一条认证消息;超过任一上限时进入不可恢复的断开状态。
xsshcode xrtSshAuthGuardReserve( xsshauthguard* pGuard, xsshauthevent Event, uint64 iMessageBytes, uint64 iNowMs, xsshauthguarddecision* pDecision );
| 参数 | 说明 |
|---|---|
| xsshauthguard* pGuard | 守卫 |
| xsshauthevent Event | Event 参数 |
| uint64 iMessageBytes | MessageBytes 参数 |
| uint64 iNowMs | 当前毫秒时间 |
| xsshauthguarddecision* pDecision | Decson 参数 |
返回:原子预留一条认证消息;超过任一上限时进入不可恢复的断开状态。
示例已编译验证
/* 原子预留一条认证消息;超过任一上限时进入不可恢复的断开状态。 */ result = xrtSshAuthGuardReserve(pGuard, Event, iMessageBytes, iNowMs, pDecision);
xrtSshAuthGuardComplete
认证成功后冻结预算;后续认证消息统一返回 IGNORE。
bool xrtSshAuthGuardComplete(xsshauthguard* pGuard);
| 参数 | 说明 |
|---|---|
| xsshauthguard* pGuard | 守卫 |
返回:认证成功后冻结预算;后续认证消息统一返回 IGNORE。
示例已编译验证
/* 认证成功后冻结预算;后续认证消息统一返回 IGNORE。 */ result = xrtSshAuthGuardComplete(pGuard);