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

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

相关推荐
玖釉-17 分钟前
LeetCode Hot 100 知识点总结与算法指南
c++·windows·算法·leetcode
stanleyrain18 分钟前
linux上无感操作Windows上的文件夹
linux·运维·windows
一个人旅程~2 小时前
MacBook Pro安装Win11 IoT LTSC 2024的两种方法操作说明
windows·经验分享·macos·电脑
阿昭L3 小时前
Lab 3-1
windows·安全·逆向工程·恶意代码分析
Cheng小攸14 小时前
综合实验2
网络·windows
酿情师16 小时前
Microsoft Visual C++ Build Tools 2026 下载与安装指南(Windows)
c++·windows·microsoft
idolao19 小时前
ChemSketch 10安装教程 Windows版:自定义路径+轻量看图软件指南
windows
李小白杂货铺21 小时前
国产电脑/笔记本安装Windows双系统手记
windows·双系统·国产电脑·麒麟os·安装方法·国产电脑windows驱动·国产笔记本
J2虾虾21 小时前
Spring AI Alibaba - 记忆管理(Memory)
人工智能·windows·spring
ZnS_oscar21 小时前
如何删除自我保护性强的程序
windows