Exemple #1
0
        public void SetTraceTimer(HackStartInfo hack, double traceTime)
        {
            var trace = new TraceTimer
            {
                TimeLeft = traceTime,
                Hack     = hack
            };

            _traceTimers.Add(trace);

            TraceStarted?.Invoke();
        }
        protected override void Main(string[] args)
        {
            if (args.Length < 2)
            {
                Console.WriteLine("{0}: usage: {0} <host> <port>");
                return;
            }

            var host       = args.First();
            var portString = args[1];

            if (ushort.TryParse(portString, out ushort port))
            {
                if (Network.DnsLookup(host, out uint addr))
                {
                    NetworkHelpers.ToIPv4String(addr);
                    if (Context.Network.TryGetHackable(addr, port, out int hops, out HackStartInfo startInfo))
                    {
                        _host    = host;
                        _address = NetworkHelpers.ToIPv4String(addr);
                        _hops    = hops;
                        _hack    = startInfo;
                        StartHack();
                    }
                    else
                    {
                        Console.WriteLine("{0}: error: {1}:{2}: couldn't connect.", Name, host, port);
                        Complete();
                    }
                }
                else
                {
                    Console.WriteLine("{0}: {1}: Failed to resolve host.", Name, host);
                    Complete();
                }
            }