sdk: 同步主仓新增模块 cachegov/lazygrid/select/net 通道
This commit is contained in:
1 parent
0af6af7c7e
commit
64cde13c8d
15 files changed
+1326
-10
No files matched your search
@@ -35,6 +35,12 @@
|
||||
/* 列表编码上限(count 个 NUL 字符串时,distinct 工作缓冲上限) */
|
||||
#define MEOW_IPC_CARGO 1024u /* 守护进程入队拷贝上限(可小于 MEOW_IPC_MAX) */
|
||||
|
||||
/* ---- page-cache 治理(OOM_PAGECACHE_GOVERNANCE.md,③混合)----
|
||||
* meow_svc_perf(C:/proc/meminfo Cached 监控降载)把「是否暂停下载/预取」写入此共享状态文件
|
||||
* (一行式 key=value;App/SDK meow_cachegov 只读,系统级单点,不重复起线程)。
|
||||
* 路径可被 env MEOW_CACHEGOV_C_FILE 覆盖(宿主测试隔离)。 */
|
||||
#define MEOW_CACHEGOV_C_FILE "/tmp/meow_cachegov_c.state"
|
||||
|
||||
/* ---- 消息类型(FRAMEWORK_DESIGN §1 表)---- */
|
||||
enum {
|
||||
MSG_NONE = 0x0000,
|
||||
@@ -601,4 +607,34 @@ typedef struct m_net_dns_result {
|
||||
char text[MEOW_IPC_MAX - 8];
|
||||
} m_net_dns_result_t;
|
||||
|
||||
/* ---- 期 4:SDK 网络自愿通道(NETMGR_DESIGN §6.3/§4;0xEE/0xEF)----
|
||||
* 一、meow_net_policy_check(host):框架 App 联网前自查 host 是否被 netmgrd 策略放行——
|
||||
* 服务端以调用方 app_id(msg.app_id)→ 实体 app:<pkg>,评估 policy_net_blocked(entity)
|
||||
* || dns_query_domain_denied(entity, host),放行=allow 1 / 拒绝=block 0;netmgrd 不在 → SDK 侧放行。
|
||||
* 二、meow_net_report(rx,tx):App 自愿上报本进程收发字节数(内核无 per-socket/per-uid 计数,
|
||||
* §4 诚实声明的「字节级记账走 SDK 自报」);netmgrd 记入 per-实体统计(status JSON entity_bytes)。
|
||||
* 读级/上报任意调用者(自愿自报,无副作用;block 判定由服务端策略引擎权威执行)。
|
||||
* (0x00EE 曾留作「事件推送 订阅制」,期 4 起改作 SDK 通道;事件推送期 2 从未实装。) */
|
||||
enum { /* 与主 enum 分列,追加式不改既有行 */
|
||||
MSG_NET_SDK = 0x00EE, /* ↑ op=0 策略检查 / op=1 字节上报 */
|
||||
MSG_NET_SDK_RESULT = 0x00EF /* ↓ code + (CHECK)allow + 状态文本 */
|
||||
};
|
||||
enum { NET_SDK_CHECK = 0, NET_SDK_REPORT = 1 };
|
||||
|
||||
typedef struct m_net_sdk {
|
||||
uint32_t op; /* NET_SDK_CHECK / NET_SDK_REPORT */
|
||||
char app_id[MEOW_APP_ID_MAX]; /* 调用方 application(SDK 用 env MEOW_LOG_APP;CLI/测试可任意) */
|
||||
char host[64]; /* CHECK:待查域名 */
|
||||
uint32_t rx; /* REPORT:本进程累计 RX 字节 */
|
||||
uint32_t tx; /* REPORT:本进程累计 TX 字节 */
|
||||
} m_net_sdk_t; /* 4+32+64+4+4 = 108 B */
|
||||
|
||||
typedef struct m_net_sdk_result {
|
||||
uint32_t code; /* MEOW_OK / MEOW_ERR_* */
|
||||
int32_t allow; /* CHECK:1=allow 0=block(block 由服务端策略引擎判定) */
|
||||
uint16_t text_len;
|
||||
uint16_t pad;
|
||||
char text[MEOW_IPC_MAX - 12];
|
||||
} m_net_sdk_result_t;
|
||||
|
||||
#endif /* MEOW_IPC_H */
|
||||
Reference in new issue
Block a user