コード例 #1
0
 /// <summary>
 /// Send OpenVPN a signal to quit and wait for answer.
 /// After returning from this method you can savely close all sockets by calling disconnect().
 /// </summary>
 public void sendQuit()
 {
     if (isConnected())
     {
         setLock(WaitState.SIGNAL);
         m_releaselock = false;
         m_logs.logLine(LogType.Management,"Sending signal to quit");
         m_ovpnComm.send("signal SIGTERM");
         while (m_state == WaitState.SIGNAL && m_ovpnComm.isConnected())
         {
             Thread.Sleep(100);
             m_ovpnComm.send("signal SIGTERM"); // HACK: <- this is crazy. TODO: find out, why this is needed.
             Thread.Sleep(100);
         }
     }
 }