mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 16:36:33 +00:00
Created new network utility niclist for displaying list of packet capture devices.
svn path=/trunk/; revision=3194
This commit is contained in:
parent
51fbd50e50
commit
3f876808eb
3 changed files with 139 additions and 0 deletions
20
rosapps/net/niclist/makefile
Normal file
20
rosapps/net/niclist/makefile
Normal file
|
@ -0,0 +1,20 @@
|
|||
|
||||
PATH_TO_TOP=../../../reactos
|
||||
|
||||
TARGET_TYPE = program
|
||||
|
||||
TARGET_APPTYPE = console
|
||||
|
||||
TARGET_NAME = niclist
|
||||
|
||||
TARGET_SDKLIBS = ws2_32.a
|
||||
|
||||
TARGET_OBJECTS = $(TARGET_NAME).o
|
||||
|
||||
TARGET_GCCLIBS = iberty
|
||||
|
||||
include $(PATH_TO_TOP)/rules.mak
|
||||
|
||||
include $(TOOLS_PATH)/helper.mk
|
||||
|
||||
# EOF
|
80
rosapps/net/niclist/niclist.c
Normal file
80
rosapps/net/niclist/niclist.c
Normal file
|
@ -0,0 +1,80 @@
|
|||
/* $Id: niclist.c,v 1.1 2002/07/09 19:34:41 robd Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS packet driver interface list utility
|
||||
* FILE: apps/net/niclist/niclist.c
|
||||
* PURPOSE: Network information utility
|
||||
* PROGRAMMERS: Robert Dickenson (robert_dickenson@users.sourceforge.net)
|
||||
* REVISIONS:
|
||||
* RDD 10/07/2002 Created from bochs sources
|
||||
*/
|
||||
/*
|
||||
For this program and for win32 ethernet, the winpcap library is required.
|
||||
Download it from http://netgroup-serv.polito.it/winpcap.
|
||||
*/
|
||||
#ifdef MSC_VER
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#endif
|
||||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define MAX_ADAPTERS 10
|
||||
#define NIC_BUFFER_SIZE 2048
|
||||
|
||||
|
||||
// structure to hold the adapter name and description
|
||||
typedef struct {
|
||||
LPWSTR wstrName;
|
||||
LPSTR strDesc;
|
||||
} NIC_INFO_NT;
|
||||
|
||||
// array of structures to hold information for our adapters
|
||||
NIC_INFO_NT nic_info[MAX_ADAPTERS];
|
||||
|
||||
// pointer to exported function in winpcap library
|
||||
BOOLEAN (*PacketGetAdapterNames)(PTSTR, PULONG) = NULL;
|
||||
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
char AdapterInfo[NIC_BUFFER_SIZE] = { '\0','\0' };
|
||||
unsigned long AdapterLength = NIC_BUFFER_SIZE;
|
||||
LPWSTR wstrName;
|
||||
LPSTR strDesc;
|
||||
int nAdapterCount;
|
||||
int i;
|
||||
|
||||
|
||||
// Attemp to load the WinPCap dynamic link library
|
||||
HINSTANCE hPacket = LoadLibrary("PACKET.DLL");
|
||||
if (hPacket) {
|
||||
PacketGetAdapterNames = (BOOLEAN (*)(PTSTR, PULONG))GetProcAddress(hPacket, "PacketGetAdapterNames");
|
||||
} else {
|
||||
printf("Could not load WinPCap driver! for more information goto:\n");
|
||||
printf ("http://netgroup-serv.polito.it/winpcap\n");
|
||||
return 1;
|
||||
}
|
||||
PacketGetAdapterNames(AdapterInfo, &AdapterLength);
|
||||
wstrName = (LPWSTR)AdapterInfo;
|
||||
|
||||
// Enumerate all the adapters names found...
|
||||
nAdapterCount = 0;
|
||||
while ((*wstrName)) {
|
||||
nic_info[nAdapterCount].wstrName = wstrName;
|
||||
wstrName += lstrlenW(wstrName) + 1;
|
||||
nAdapterCount++;
|
||||
}
|
||||
strDesc = (LPSTR)++wstrName;
|
||||
|
||||
// And obtain the adapter description strings....
|
||||
for (i = 0; i < nAdapterCount; i++) {
|
||||
nic_info[i].strDesc = strDesc;
|
||||
strDesc += lstrlen(strDesc) + 1;
|
||||
|
||||
// display adapter info
|
||||
printf("%d: %s\n", i + 1, nic_info[i].strDesc);
|
||||
wprintf(L" Device: %s\n", nic_info[i].wstrName);
|
||||
}
|
||||
return 0;
|
||||
}
|
39
rosapps/net/niclist/niclist.rc
Normal file
39
rosapps/net/niclist/niclist.rc
Normal file
|
@ -0,0 +1,39 @@
|
|||
#include <defines.h>
|
||||
#include <reactos/resource.h>
|
||||
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION RES_UINT_FV_MAJOR,RES_UINT_FV_MINOR,RES_UINT_FV_REVISION,RES_UINT_FV_BUILD
|
||||
PRODUCTVERSION RES_UINT_PV_MAJOR,RES_UINT_PV_MINOR,RES_UINT_PV_REVISION,RES_UINT_PV_BUILD
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x40004L
|
||||
FILETYPE 0x2L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", RES_STR_COMPANY_NAME
|
||||
VALUE "FileDescription", "ReactOS packet driver niclist\0"
|
||||
VALUE "FileVersion", RES_STR_FILE_VERSION
|
||||
VALUE "InternalName", "niclist\0"
|
||||
VALUE "LegalCopyright", RES_STR_LEGAL_COPYRIGHT
|
||||
VALUE "OriginalCopyright", "Robert Dickenson (robd@reactos.org)\0"
|
||||
VALUE "OriginalFilename", "niclist.exe\0"
|
||||
VALUE "ProductName", RES_STR_PRODUCT_NAME
|
||||
VALUE "ProductVersion", RES_STR_PRODUCT_VERSION
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
Loading…
Reference in a new issue