VirtualBox

Changeset 4276 in vbox


Ignore:
Timestamp:
Aug 22, 2007 8:11:50 AM (17 years ago)
Author:
vboxsync
Message:

allow to set uart mode disconnected

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManage.cpp

    r4274 r4276  
    335335                 "                            [-macaddress<1-N> auto|<mac>]\n"
    336336                 "                            [-uart<1-N> off|<I/O base> <IRQ>]\n"
    337                  "                            [-uartmode<1-N> server|client <pipe name>|\n"
    338                  "                                            <device name>]\n"
     337                 "                            [-uartmode<1-N> disconnected|<device name>|\n"
     338                 "                                            server|client <pipe name>\n"
    339339                 );
    340340        if (fLinux)
     
    32903290                return 1;
    32913291            i++;
    3292             if (strcmp(argv[i], "server") == 0 || strcmp(argv[i], "client") == 0)
     3292            if (strcmp(argv[i], "disconnected") == 0)
    32933293            {
    32943294                uarts_mode[n - 1] = argv[i];
    3295                 i++;
     3295            }
     3296            else
     3297            {
     3298                if (strcmp(argv[i], "server") == 0 || strcmp(argv[i], "client") == 0)
     3299                {
     3300                    uarts_mode[n - 1] = argv[i];
     3301                    i++;
    32963302#ifdef RT_OS_WINDOWS
    3297                 if (strncmp(argv[i], "\\\\.\\pipe\\", 9))
    3298                     return errorArgument("Uart pipe must start with \\\\.\\pipe\\");
     3303                    if (strncmp(argv[i], "\\\\.\\pipe\\", 9))
     3304                        return errorArgument("Uart pipe must start with \\\\.\\pipe\\");
    32993305#endif
    3300             }
    3301             else
    3302             {
    3303                 uarts_mode[n - 1] = (char*)"device";
    3304             }
    3305             if (argc <= i)
    3306             {
    3307                 return errorArgument("Missing argument to -uartmode");
    3308             }
    3309             uarts_path[n - 1] = argv[i];
     3306                }
     3307                else
     3308                {
     3309                    uarts_mode[n - 1] = (char*)"device";
     3310                }
     3311                if (argc <= i)
     3312                {
     3313                    return errorArgument("Missing argument to -uartmode");
     3314                }
     3315                uarts_path[n - 1] = argv[i];
     3316            }
    33103317        }
    33113318        else if (strncmp(argv[i], "-uart", 5) == 0)
     
    41014108            if (uarts_mode[n])
    41024109            {
    4103                 if (strcmp(uarts_mode[n], "server") == 0)
    4104                 {
    4105                     CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostPipe), 1);
    4106                     CHECK_ERROR_RET(uart, COMSETTER(Server) (TRUE), 1);
    4107                 }
    4108                 else if (strcmp(uarts_mode[n], "client") == 0)
    4109                 {
    4110                     CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostPipe), 1);
    4111                     CHECK_ERROR_RET(uart, COMSETTER(Server) (FALSE), 1);
     4110                if (strcmp(uarts_mode[n], "disconnected") == 0)
     4111                {
     4112                    CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_Disconnected), 1);
    41124113                }
    41134114                else
    41144115                {
    4115                     CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostDevice), 1);
    4116                 }
    4117                 CHECK_ERROR_RET(uart, COMSETTER(Path) (Bstr(uarts_path[n])), 1);
     4116                    if (strcmp(uarts_mode[n], "server") == 0)
     4117                    {
     4118                        CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostPipe), 1);
     4119                        CHECK_ERROR_RET(uart, COMSETTER(Server) (TRUE), 1);
     4120                    }
     4121                    else if (strcmp(uarts_mode[n], "client") == 0)
     4122                    {
     4123                        CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostPipe), 1);
     4124                        CHECK_ERROR_RET(uart, COMSETTER(Server) (FALSE), 1);
     4125                    }
     4126                    else
     4127                    {
     4128                        CHECK_ERROR_RET(uart, COMSETTER(HostMode) (SerialHostMode_HostDevice), 1);
     4129                    }
     4130                    CHECK_ERROR_RET(uart, COMSETTER(Path) (Bstr(uarts_path[n])), 1);
     4131                }
    41184132            }
    41194133        }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette