Exemplo n.º 1
0
        public void TestSetAndWrongGet(int port, int program, int version, int program2, int version2)
        {
            var settings = new PortMapperClientSettings
            {
                Port = PortMapperPort
            };

            using var client = new PortMapperClient(
                      Protocol.Tcp,
                      IPAddress.Loopback,
                      settings);
            client.Set(
                new Mapping
            {
                Port    = port,
                Program = program,
                Version = version
            });

            int receivedPort = client.GetPort(
                new Mapping
            {
                Program = program2,
                Version = version2
            });

            Assert.That(receivedPort, Is.EqualTo(0));
        }
Exemplo n.º 2
0
        private static int Unset(IPEndPoint ipEndPoint, IReadOnlyList <string> args)
        {
            if (args.Count < 2 || args.Count > 3)
            {
                PrintUsage();
                return(1);
            }

            if (!int.TryParse(args[0], out int program) || !int.TryParse(args[1], out int version))
            {
                PrintUsage();
                return(1);
            }

            var protocol = Protocol.Unknown;

            if (args.Count == 3 && !Enum.TryParse(args[2], true, out protocol))
            {
                PrintUsage();
                return(1);
            }

            using PortMapperClient client = CreateClient(ipEndPoint);
            bool result = client.Unset(
                new Mapping
            {
                Program  = program,
                Version  = version,
                Protocol = protocol
            });

            Console.WriteLine(result);
            return(0);
        }
Exemplo n.º 3
0
        private static int Set(IPEndPoint ipEndPoint, IReadOnlyList <string> args)
        {
            if (args.Count != 4 ||
                !int.TryParse(args[0], out int program) ||
                !int.TryParse(args[1], out int version) ||
                !Enum.TryParse(args[2], true, out Protocol protocol) ||
                !int.TryParse(args[3], out int port))
            {
                PrintUsage();
                return(1);
            }

            using PortMapperClient client = CreateClient(ipEndPoint);
            bool result = client.Set(
                new Mapping
            {
                Program  = program,
                Version  = version,
                Protocol = protocol,
                Port     = port
            });

            Console.WriteLine(result);
            return(0);
        }
Exemplo n.º 4
0
        private static int Dump(IPEndPoint ipEndPoint)
        {
            using PortMapperClient client = CreateClient(ipEndPoint);
            IReadOnlyList <Mapping> result = client.Dump();

            foreach (Mapping mapping in result)
            {
                Console.WriteLine(
                    $"Protocol: {mapping.Protocol}, Program: {mapping.Program}, " +
                    $"Version: {mapping.Version}, Port: {mapping.Port}");
            }

            return(0);
        }