ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/host/winhost/nettest.frm
(Generate patch)

Comparing projects/cms/source/host/winhost/nettest.frm (file contents):
Revision 1.1 by pjm2, Thu Feb 22 17:04:22 2001 UTC vs.
Revision 1.4 by pjm2, Fri Feb 23 10:29:16 2001 UTC

# Line 18 | Line 18 | Begin VB.Form Form1
18        Caption         =   "TCP to Filter"
19        Height          =   375
20        Left            =   3720
21 <      TabIndex        =   9
21 >      TabIndex        =   5
22        Top             =   2520
23        Width           =   1575
24     End
# Line 27 | Line 27 | Begin VB.Form Form1
27        Left            =   240
28        MultiLine       =   -1  'True
29        ScrollBars      =   2  'Vertical
30 <      TabIndex        =   8
30 >      TabIndex        =   4
31        Text            =   "nettest.frx":0000
32        Top             =   3000
33        Width           =   5055
# Line 36 | Line 36 | Begin VB.Form Form1
36        Caption         =   "TCP to FilterManager"
37        Height          =   375
38        Left            =   3360
39 <      TabIndex        =   7
39 >      TabIndex        =   3
40        Top             =   2040
41        Width           =   1935
42     End
# Line 47 | Line 47 | Begin VB.Form Form1
47        _ExtentY        =   741
48        _Version        =   393216
49     End
50   Begin VB.TextBox Text3
51      Height          =   285
52      Left            =   1680
53      TabIndex        =   5
54      Text            =   "killigrew.ukc.ac.uk"
55      Top             =   1560
56      Width           =   2535
57   End
58   Begin VB.TextBox Text2
59      Height          =   285
60      Left            =   1680
61      TabIndex        =   3
62      Text            =   "4567"
63      Top             =   1920
64      Width           =   855
65   End
50     Begin VB.CommandButton Command1
51        Caption         =   "Send UDP"
52        Height          =   375
# Line 87 | Line 71 | Begin VB.Form Form1
71        _Version        =   393216
72        Protocol        =   1
73     End
90   Begin VB.Label Label3
91      Alignment       =   1  'Right Justify
92      Caption         =   "Destination:"
93      Height          =   255
94      Left            =   360
95      TabIndex        =   6
96      Top             =   1560
97      Width           =   1215
98   End
99   Begin VB.Label Label2
100      Alignment       =   1  'Right Justify
101      Caption         =   "Port:"
102      Height          =   255
103      Left            =   360
104      TabIndex        =   4
105      Top             =   1920
106      Width           =   1215
107   End
74     Begin VB.Label Label1
75        Caption         =   "Packet contents"
76        Height          =   255
# Line 119 | Line 85 | Attribute VB_GlobalNameSpace = False
85   Attribute VB_Creatable = False
86   Attribute VB_PredeclaredId = True
87   Attribute VB_Exposed = False
88 + Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
89 + Private Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long
90 +
91 + Dim filterManagerHostname As String
92 + Dim filterManagerTCPPort As Integer
93 +
94 + Dim filterHostname As String
95 + Dim filterTCPPort As Integer
96 + Dim filterUDPPort As Integer
97 + Dim fileList As String
98 + Dim lastModified As String
99 +
100 + Dim protocolVersion As String
101 + Dim connected As Boolean
102   Dim responseNumber As Integer
103  
104  
105   Private Sub Command1_Click()
106  
107 <    ' Use the first winsock control to send
128 <    ' a UDP packet.
129 <    Winsock1.RemoteHost = Text3.Text
130 <    Winsock1.RemotePort = Text2.Text
131 <    Winsock1.SendData Text1.Text
107 >    xml = "<packet></packet>"
108  
109 +    ' Use the first winsock control to send a UDP packet.
110 +    Winsock1.RemoteHost = filterHostname
111 +    Winsock1.RemotePort = filterUDPPort
112 +    Winsock1.SendData xml
113 +
114   End Sub
115  
116   Private Sub Command2_Click()
117      
118 <    ' establish a TCP connection to a machine
118 >    ' establish a TCP connection to a filtermanager
119      Winsock2.Close
120 <    Winsock2.Connect Text3.Text, Text2.Text
120 >    Winsock2.Connect filterManagerHostname, filterManagerTCPPort
121  
122   End Sub
123  
124   Private Sub Command3_Click()
125 <    x = MsgBox("not implemented..")
125 >    ' establish a TCP connection to a filter
126 >    Winsock2.Close
127 >    Winsock2.Connect filterHostname, filterTCPPort
128   End Sub
129  
130 + Private Sub Form_Load()
131 +    protocolVersion = "1.1"
132 +    
133 +    ''''TEMP
134 +    filterManagerHostname = "killigrew.ukc.ac.uk"
135 +    filterManagerTCPPort = 4567
136 +    Exit Sub
137 +    ''' ENDTEMP
138 +    
139 +    On Error GoTo iniError
140 +    Dim buf As String * 256
141 +    Dim length As Long
142 +    length = GetPrivateProfileString("i-scream Winhost", "FilterManager", "<no value>", buf, Len(buf), App.Path & "winhost.ini")
143 +    filterManagerHostname = Left$(buf, length)
144 +    length = GetPrivateProfileString("i-scream Winhost", "FilterManagerPort", "<no value>", buf, Len(buf), App.Path & "winhost.ini")
145 +    filterManagerTCPPort = Left$(buf, length)
146 +    
147 +    Exit Sub
148 +    
149 + iniError:
150 +    x = MsgBox("The i-scream Winhost could not read the correct settings from the winhost.ini file.  Please correct these and try again.", 48, "Configuration not found")
151 +    End
152 +    
153 + End Sub
154 +
155 + Private Sub Label2_Click()
156 +
157 + End Sub
158 +
159   Private Sub Winsock2_Connect()
160        
161     responseNumber = 0
162    
163 <   ' As soon as we are connected to the server, send this.
164 <   Winsock2.SendData "STARTCONFIG" & vbCrLf
163 >    ' Send something as soon as we connect to the server.
164 >    If connected = False Then
165 >        ' contact the FilterManager
166 >        Winsock2.SendData "STARTCONFIG" & vbCrLf
167 >    Else
168 >       ' Contact the Filter
169 >       Winsock2.SendData "HEARTBEAT" & vbCrLf
170 >    End If
171    
172   End Sub
173  
# Line 165 | Line 183 | Private Sub Winsock2_DataArrival(ByVal bytesTotal As L
183      response = Replace(response, Chr(10), "")
184      Text4.Text = Text4.Text & vbCrLf & response
185      
186 <    ' Decide what to send back to the server.
187 <    Select Case responseNumber
188 <        Case 1:
189 <            Winsock2.SendData "LASTMODIFIED" & vbCrLf
190 <        Case 2:
191 <            Winsock2.SendData "FILELIST" & vbCrLf
192 <        Case 3:
193 <            Winsock2.SendData "UDPUpdateTime" & vbCrLf
194 <        Case 4:
195 <            Winsock2.SendData "TCPUpdateTime" & vbCrLf
196 <        Case 5:
197 <            Winsock2.SendData "ENDCONFIG" & vbCrLf
198 <        Case 6:
199 <            Winsock2.SendData "FILTER" & vbCrLf
200 <        Case 7:
201 <            Winsock2.SendData "END" & vbCrLf
202 <        Case 8:
203 <            Winsock2.Close
204 <            Text4.Text = Text4.Text & vbCrLf & "  <closed>"
205 <    End Select
186 >    If connected = False Then
187 >        ' Perform TCP configuration (1.1)
188 >        On Error GoTo configError
189 >        Select Case responseNumber
190 >            Case 1:
191 >                If Not response = "OK" Then GoTo configError
192 >                Winsock2.SendData "LASTMODIFIED" & vbCrLf
193 >            Case 2:
194 >                If response = "ERROR" Then GoTo configError
195 >                lastModified = response
196 >                Winsock2.SendData "FILELIST" & vbCrLf
197 >            Case 3:
198 >                If response = "ERROR" Then GoTo configError
199 >                fileList = response
200 >                Winsock2.SendData "UDPUpdateTime" & vbCrLf
201 >            Case 4:
202 >                If response = "ERROR" Then GoTo configError
203 >                Winsock2.SendData "TCPUpdateTime" & vbCrLf
204 >            Case 5:
205 >                If response = "ERROR" Then GoTo configError
206 >                Winsock2.SendData "ENDCONFIG" & vbCrLf
207 >            Case 6:
208 >                If Not response = "OK" Then GoTo configError
209 >                Winsock2.SendData "FILTER" & vbCrLf
210 >            Case 7:
211 >                'we got a filter list here.
212 >                readTo = 0
213 >                ' get hostname
214 >                readTo = InStr(1, response, ";", vbBinaryCompare)
215 >                filterHostname = Mid(response, 1, readTo - 1)
216 >                response = Mid(response, readTo + 1, Len(response))
217 >                ' get UDP Port number
218 >                readTo = InStr(1, response, ";")
219 >                filterUDPPort = Mid(response, 1, readTo - 1)
220 >                response = Mid(response, readTo + 1, Len(response))
221 >                ' get TCP Port number
222 >                filterTCPPort = response
223 >                Winsock2.SendData "END" & vbCrLf
224 >            Case 8:
225 >                If Not response = "OK" Then GoTo configError
226 >                connected = True
227 >                responseNumber = 0
228 >                Winsock2.Close
229 >                Text4.Text = Text4.Text & vbCrLf & "  <closed>"
230 >                x = MsgBox("got config okay")
231 >        End Select
232 >    Else
233 >        ' Perform a heartbeat (1.1)
234 >        On Error GoTo heartbeatError
235 >        Select Case responseNumber
236 >            Case 1:
237 >                If Not response = "OK" Then GoTo heartbeatError
238 >                Winsock2.SendData "CONFIG" & vbCrLf
239 >            Case 2:
240 >                If Not response = "OK" Then GoTo heartbeatError
241 >                Winsock2.SendData fileList & vbCrLf
242 >            Case 3:
243 >                If Not response = "OK" Then GoTo heartbeatError
244 >                Winsock2.SendData lastModified & vbCrLf
245 >            Case 4:
246 >                If Not response = "OK" Then GoTo heartbeatError
247 >                Winsock2.SendData "ENDHEARTBEAT" & vbCrLf
248 >            Case 5:
249 >                If Not response = "OK" Then GoTo heartbeatError
250 >                Winsock2.Close
251 >                x = MsgBox("heartbeat sent okay.")
252 >        End Select
253      
254 +    End If
255 +    
256 +    
257 +    Exit Sub
258 +    
259 + configError:
260 +    x = MsgBox("error doing configuration")
261 + heartbeatError:
262 +    x = MsgBox("error doing configuration")
263   End Sub

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines