File: macutil.h

package info (click to toggle)
mariadb-10.0 10.0.16-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 416,512 kB
  • sloc: cpp: 1,351,103; ansic: 803,086; perl: 59,621; pascal: 32,136; sh: 25,156; yacc: 14,897; xml: 5,194; sql: 4,651; cs: 4,647; makefile: 4,113; python: 2,526; ruby: 2,496; lex: 1,427; asm: 295; awk: 54; php: 22; sed: 16
file content (36 lines) | stat: -rw-r--r-- 1,266 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// MACUTIL.H     Olivier Bertrand    2008-2012
// Get Mac Addresses via GetAdaptersInfo
#if defined(WIN32)
#include <iphlpapi.h>
#else   // !WIN32
#error This is WIN32 only
#endif  // !WIN32
#include "block.h"

typedef class MACINFO *MACIP;

/***********************************************************************/
/*  This is the class declaration for MACINFO.                         */
/***********************************************************************/
class DllExport MACINFO : public BLOCK {
 public:
  // Constructor
  MACINFO(bool adap, bool fix);

  // Implementation
  int  GetNadap(PGLOBAL g);
  bool GetMacInfo(PGLOBAL g);
  bool GetFixedInfo(PGLOBAL g);
  void MakeErrorMsg(PGLOBAL g, DWORD drc);
  bool NextMac(void);
  bool GetOneInfo(PGLOBAL g, int flag, void *v, int lv);

  // Members
  FIXED_INFO      *Fip;          // Points to fixed info structure
  PIP_ADAPTER_INFO Piaf;         // Points on Adapter info array
  PIP_ADAPTER_INFO Curp;         // Points on current Adapt info
  ULONG            Buflen;       // Buffer length
  bool             Fix;           // true if FixedInfo is needed
  bool             Adap;         // true if Piaf is needed
  int              N;             // Number of adapters
  }; // end of class MACINFO