网络安全端口安全映射工具编写代码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

相关推荐
cly11 天前
Ansible自动化(九):循环语句
windows·自动化·ansible
Monly211 天前
Windows:服务注册
windows
深圳市恒讯科技1 天前
如何从损坏的Windows或Linux VPS中恢复文件
linux·运维·windows
彷徨而立1 天前
【Windows API】音频 API 对比:wavein/waveout、DirectSound、ASIO、WASAPI
windows·音视频
开开心心就好1 天前
音频格式互转工具,支持Mp3ApeWavFlac互转
java·网络·c++·windows·qt·电脑·excel
吴声子夜歌1 天前
Java数据结构与算法——基本数学问题
java·开发语言·windows
扫地的小何尚1 天前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
这儿有一堆花2 天前
用原生脚本编写无害恶作剧
windows
因我你好久不见2 天前
Windows部署springboot jar支持开机自启动
windows·spring boot·jar
夜流冰2 天前
Excel - MS Support for Excel: 2 Collaborate
数据库·windows·excel