81 lines
2.0 KiB
C
Raw Normal View History

2025-04-30 15:28:08 +08:00
/*
*
*/
#ifndef IPSCAN_H
#define IPSCAN_H
#define _XOPEN_SOURCE 600 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޷<EFBFBD>ʹ<EFBFBD><CAB9>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/select.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include "typeorigin.h"
#define DEVTYPE "jda901"
#ifdef AZL5083
#define DEVNAME "AZL5083"
#define ETHNAME_INSIDE "eth0"
#define ETHNAME_OUTSIDE "eth1"
#elif defined SZR303
// AZL Ϊʶ<CEAA><CAB6>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9> AZL <20><>ͷ
#define DEVNAME "AZLR303"
#define ETHNAME_INSIDE "ens0"
#define ETHNAME_OUTSIDE "ens1"
#elif defined MW335
#define DEVNAME "MW335"
#else
#define DEVNAME "UNKNOWN"
#define ETHNAME_INSIDE "ens33"
#define ETHNAME_OUTSIDE "ens33"
#endif
#define PART_TYPE_SIZE 8
#define PART_NAME_SIZE 8
#define PART_IP_SIZE 16
#define PART_MAC_SIZE 20
#define RECV_BUF_SIZE 11 // <20><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD>Բ<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define SEND_BUF_SIZE 128 // <20><><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD>Բ<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef struct _server_udp {
ST_INT port; // <20><><EFBFBD>ض˿<D8B6>
ST_CHAR ip[32]; // <20><><EFBFBD><EFBFBD>ip<69><70>ַ
ST_INT sock; // <20><><EFBFBD><EFBFBD> socket
struct SOCKADDR addr; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} server_udp;
ST_RET InitSystem();
ST_RET InitAndStartUdpServer(server_udp *server, ST_INT port);
ST_RET SeletsUDPData(server_udp *server); //select <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ģʽ
ST_RET RecvUdpData(server_udp *server); // <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ģʽ
ST_RET SendUdpData(server_udp *server , struct SOCKADDR *client_addr, ST_CHAR *data, ST_INT len);
// <20><><EFBFBD><EFBFBD> <20>ͻ<EFBFBD><CDBB>˵<EFBFBD>buff
ST_RET ParseClientBuff(server_udp *server, struct SOCKADDR *client_addr, ST_CHAR *buff);
ST_RET CloseUdpServer(server_udp *server);
// <20><>ȡ<EFBFBD><EFBFBD><E8B1B8>Ϣ
ST_RET GetDevInfo(ST_CHAR *buff, ST_INT buff_len);
ST_RET GetIPAddr(ST_CHAR *buff, const ST_CHAR *ethname);
ST_RET GetMacAddr(ST_CHAR *buff, const ST_CHAR *ethname);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_RET SetGateway(ST_CHAR *ethname);
ST_RET EXEC_CMD(const ST_CHAR *cmd, ST_CHAR *result, ST_INT ret_len);
ST_VOID PrintBuffer(ST_UCHAR *buff, ST_INT len);
#endif