sscanf(temp,"srcip=%d.%d.%d.%d,dstip=%d.%d.%d.%d", &c1, &c2, &c3, &c4, &d1, &d2, &d3, &d4);
printk(KERN_DEBUG "%d.%d.%d.%d,%d.%d.%d.%d\n", c1, c2, c3, c4, d1, d2, d3, d4);
if (((c1 + c2 + c3 + c4) > 255 * 4) ||
((d1 + d2 + d3 + d4) > 255 * 4)) {
pr_err("Input ip address is wrong!\n");
return count;
}
lsrc_ip = c4 + (c3 << 8) +
(c2 << 16) + (c1 << 24);
ldst_ip = d4 + (d3 << 8) +
(d2 << 16) + (d1 << 24);
printk(KERN_DEBUG "src_ip:0x%08x, dst_ip:0x%08x\n", lsrc_ip, ldst_ip);
printk(KERN_DEBUG "%d.%d.%d.%d,%d.%d.%d.%d\n", c1, c2, c3, c4, d1, d2, d3, d4);
if (((c1 + c2 + c3 + c4) > 255 * 4) ||
((d1 + d2 + d3 + d4) > 255 * 4)) {
pr_err("Input ip address is wrong!\n");
return count;
}
lsrc_ip = c4 + (c3 << 8) +
(c2 << 16) + (c1 << 24);
ldst_ip = d4 + (d3 << 8) +
(d2 << 16) + (d1 << 24);
printk(KERN_DEBUG "src_ip:0x%08x, dst_ip:0x%08x\n", lsrc_ip, ldst_ip);
本文介绍了一段代码如何从字符串中解析源IP地址和目标IP地址,并将其转换为整数形式进行验证。通过使用sscanf函数读取字符串中的IP地址,并通过位移运算将这些地址转换成整数。
885

被折叠的 条评论
为什么被折叠?



