Пример #1
0
        private void ConfigFormEth_Load(object sender, EventArgs e)
        {
            //Done here to load settings
            cbIntercept.Enabled = false;

            int curIndex = 1;

            cbAPI.Items.Clear();
            //Detect which API's we have
            //Winsock
            winsockAdapters = Winsock.GetAdapters();
            apiIndex.Add(ConfigFile.EthAPI.Winsock, curIndex);
            cbAPI.Items.Add("Sockets (Winsock)");
            curIndex++;
            //Windows Only
            if (PSE.CLR_PSE_Utils.IsWindows())
            {
                //Tap
                tapAdapters = TAPAdapter.GetAdapters();
                if (tapAdapters != null)
                {
                    cbAPI.Items.Add("Tap");
                    apiIndex.Add(ConfigFile.EthAPI.Tap, curIndex);
                    curIndex++;
                }
            }

            //WinPcap
            winPcapAdapters = WinPcapAdapter.GetAdapters();
            if (winPcapAdapters != null)
            {
                cbAPI.Items.Add("WinPcap Bridged");
                apiIndex.Add(ConfigFile.EthAPI.WinPcapBridged, curIndex);
                curIndex++;
                cbAPI.Items.Add("WinPcap Switched (Promiscuous)");
                apiIndex.Add(ConfigFile.EthAPI.WinPcapSwitched, curIndex);
                curIndex++;
            }

            if (apiIndex.ContainsKey(DEV9Header.config.EthType))
            {
                cbAPI.SelectedIndex = apiIndex[DEV9Header.config.EthType] - 1;
            }
            else
            {
                cbAPI.SelectedIndex = (int)ConfigFile.EthAPI.Null;
            }
        }