summaryrefslogtreecommitdiff
path: root/ext/bin/tap-windows-ndis6/x86/zttap300.inf
blob: 453797b38776e7ef2c3532c7babab21401ecf1c0 (plain)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
;
; ZeroTier One Virtual Network Port NDIS6 Driver
;
; Based on the OpenVPN tap-windows6 driver version 9.21.1 git
; commit 48f027cfca52b16b5fd23d82e6016ed8a91fc4d3.
; See: https://github.com/OpenVPN/tap-windows6
;
; Modified by ZeroTier, Inc. - https://www.zerotier.com/
;
; (1) Comment out 'tun' functionality and related features such as DHCP
;     emulation, since we don't use any of that. Just want straight 'tap'.
; (2) Added custom IOCTL to enumerate L2 multicast memberships.
; (3) Increase maximum number of multicast memberships to 128.
; (4) Set default and max device MTU to 2800.
; (5) Rename/rebrand driver as ZeroTier network port driver.
;
; Original copyright below. Modifications released under GPLv2 as well.
;
; ****************************************************************************
; * Copyright (C) 2002-2014 OpenVPN Technologies, Inc.                       *
; *  This program is free software; you can redistribute it and/or modify    *
; *  it under the terms of the GNU General Public License version 2          *
; *  as published by the Free Software Foundation.                           *
; ****************************************************************************
;

[Version]
Signature = "$Windows NT$"
CatalogFile = zttap300.cat
ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider = %Provider%
Class = Net
DriverVer=08/13/2015,6.2.9200.20557

[Strings]
DeviceDescription = "ZeroTier One Virtual Port"
Provider = "ZeroTier Networks LLC" ; We're ZeroTier, Inc. now but kernel mode certs are $300+ so fuqdat.

; To build for x86, take NTamd64 off this and off the named section manually, build, then put it back!
[Manufacturer]
%Provider%=zttap300,NTamd64

[zttap300]
%DeviceDescription% = zttap300.ndi, root\zttap300 ; Root enumerated
%DeviceDescription% = zttap300.ndi, zttap300      ; Legacy

[zttap300.NTamd64]
%DeviceDescription% = zttap300.ndi, root\zttap300 ; Root enumerated
%DeviceDescription% = zttap300.ndi, zttap300      ; Legacy

;----------------- Characteristics ------------
;    NCF_PHYSICAL = 0x04
;    NCF_VIRTUAL = 0x01
;    NCF_SOFTWARE_ENUMERATED = 0x02
;    NCF_HIDDEN = 0x08
;    NCF_NO_SERVICE = 0x10
;    NCF_HAS_UI = 0x80
;----------------- Characteristics ------------
[zttap300.ndi]
CopyFiles       = zttap300.driver, zttap300.files
AddReg          = zttap300.reg
AddReg          = zttap300.params.reg
Characteristics = 0x81
*IfType            = 0x6 ; IF_TYPE_ETHERNET_CSMACD
*MediaType         = 0x0 ; NdisMedium802_3
*PhysicalMediaType = 14  ; NdisPhysicalMedium802_3

[zttap300.ndi.Services]
AddService = zttap300,        2, zttap300.service

[zttap300.reg]
HKR, Ndi,            Service,      0, "zttap300"
HKR, Ndi\Interfaces, UpperRange,   0, "ndis5" ; yes, 'ndis5' is correct... yup, Windows.
HKR, Ndi\Interfaces, LowerRange,   0, "ethernet"
HKR, ,               Manufacturer, 0, "%Provider%"
HKR, ,               ProductName,  0, "%DeviceDescription%"

[zttap300.params.reg]
HKR, Ndi\params\MTU,                  ParamDesc, 0, "MTU"
HKR, Ndi\params\MTU,                  Type,      0, "int"
HKR, Ndi\params\MTU,                  Default,   0, "2800"
HKR, Ndi\params\MTU,                  Optional,  0, "0"
HKR, Ndi\params\MTU,                  Min,       0, "100"
HKR, Ndi\params\MTU,                  Max,       0, "2800"
HKR, Ndi\params\MTU,                  Step,      0, "1"
HKR, Ndi\params\MediaStatus,          ParamDesc, 0, "Media Status"
HKR, Ndi\params\MediaStatus,          Type,      0, "enum"
HKR, Ndi\params\MediaStatus,          Default,   0, "0"
HKR, Ndi\params\MediaStatus,          Optional,  0, "0"
HKR, Ndi\params\MediaStatus\enum,     "0",       0, "Application Controlled"
HKR, Ndi\params\MediaStatus\enum,     "1",       0, "Always Connected"
HKR, Ndi\params\MAC,                  ParamDesc, 0, "MAC Address"
HKR, Ndi\params\MAC,                  Type,      0, "edit"
HKR, Ndi\params\MAC,                  Optional,  0, "1"
HKR, Ndi\params\AllowNonAdmin,        ParamDesc, 0, "Non-Admin Access"
HKR, Ndi\params\AllowNonAdmin,        Type,      0, "enum"
HKR, Ndi\params\AllowNonAdmin,        Default,   0, "0"
HKR, Ndi\params\AllowNonAdmin,        Optional,  0, "0"
HKR, Ndi\params\AllowNonAdmin\enum,   "0",       0, "Not Allowed"
HKR, Ndi\params\AllowNonAdmin\enum,   "1",       0, "Allowed"

;---------- Service Type -------------
;    SERVICE_KERNEL_DRIVER     = 0x01
;    SERVICE_WIN32_OWN_PROCESS = 0x10
;---------- Service Type -------------

;---------- Start Mode ---------------
;    SERVICE_BOOT_START   = 0x0
;    SERVICE_SYSTEM_START = 0x1
;    SERVICE_AUTO_START   = 0x2
;    SERVICE_DEMAND_START = 0x3
;    SERVICE_DISABLED     = 0x4
;---------- Start Mode ---------------

[zttap300.service]
DisplayName = %DeviceDescription%
ServiceType = 1
StartType = 3
ErrorControl = 1
LoadOrderGroup = NDIS
ServiceBinary = %12%\zttap300.sys

;----------------- Copy Flags ------------
;    COPYFLG_NOSKIP = 0x02
;    COPYFLG_NOVERSIONCHECK = 0x04
;----------------- Copy Flags ------------

[SourceDisksNames]
1 = %DeviceDescription%, zttap300.sys

[SourceDisksFiles]
zttap300.sys = 1

[DestinationDirs]
zttap300.files  = 11
zttap300.driver = 12

[zttap300.files]
;

[zttap300.driver]
zttap300.sys,,,6     ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK