网络安全端口安全映射工具编写代码1

1.birchutils

1.birchutils.h

#ifndef Birchutils

#define Birchutils

#include <stdio.h>

#include <string.h>

#include <stdint.h>

#include <sys/socket.h>

#include <netinet/in.h>

#include <arpa/inet.h>

typedef unsigned char int8;

typedef unsigned short int int16;

typedef unsigned int int32;

int8 *todotted(in_addr_t);

void zero(int8*, int16);

#endif

2.birchutils.c

#include "birchutils.h"

void zero(int8 *str, int16 size)

{

int8 *p;

int16 n;

for(n=0,p=str;n<size;n++,p++)

{

*p=0;

return;

}

}

int8 *todotted(in_addr_t ip){

int8 a, b,c,d;

static int8 buf[16];

d =((ip & 0xff000000) >> 24);

c = ((ip & 0xff0000) >> 16);

b =((ip & 0xff00) >> 8);

a =((ip&0xff));

zero(buf,16);

snprintf((char *)buf,15,"%d.%d.%d.%d",a,b,c,d);

return buf;

}

3.makefile

flags=-O3 -Wall -std=c2x

ldflags=-fPIC -shared -ldl -D_GNU_SOURCE

all: clean birchutils.so

birchutils.so: birchutils.o

cc {flags} ^ -o @ {ldflags}

birchutils.o: birchutils.c

cc {flags} -c ^

clean:

rm -rf birchutils.o birchutils.so

相关推荐
攻城狮在此10 小时前
SecureCRT与MobaXterm详细对比:哪个更强、谁更适合你?
windows
love530love11 小时前
冷门干货!llama.cpp 自带原生网页聊天 UI,无需第三方依赖一键开启
人工智能·windows·ui·llama·flash-attention·switch-cuda
gordon~912 小时前
Windows 11 wsl 中安装的Ubuntu-24.04 中装docker
windows·ubuntu·docker
历程里程碑13 小时前
Protobuf 环境搭建:Windows 与 Linux 系统安装教程
linux·运维·数据结构·windows·线性代数·算法·矩阵
tobebetter952714 小时前
WSL2 + Windows + remote Chrome CDP openclaw 浏览器自动化
chrome·windows·自动化
桌面运维家15 小时前
解决Windows 10打印机脱机:端口、驱动、网络故障排除
windows·stm32·单片机
liwulin050615 小时前
【ROS2】【ESP32S3纯透传方案】ESP32S3+WINDOWS+VMware+ROS2+YDLIDA X导航完整落地方案
windows·stm32·单片机
AxureMost16 小时前
MTools 0.0.12-beta 全能工具箱
windows·开源软件
beyond阿亮17 小时前
OpenClaw在Windows上接入飞书完整指南
人工智能·windows·ai·openclaw
开开心心就好19 小时前
进程启动瞬间暂停工具,适合调试多开
linux·运维·安全·pdf·智能音箱·智能手表·1024程序员节