++
+ /* Parse the argument given in the command line of the application */
+ static int
+ eal_parse_args(int argc, char **argv)
+@@ -611,6 +737,26 @@ eal_parse_args(int argc, char **argv)
+ internal_config.create_uio_dev = 1;
+ break;
+
++ case OPT_VHOST_OWNER_NUM:
++ if (get_owners_from_str(optarg, &debian_vhost_sock_uid,
++ &debian_vhost_sock_gid)) {
++ RTE_LOG(ERR, EAL,"vhost-user socket unable to get"
++ " specified user/group: %s\n", optarg);
++ debian_vhost_sock_uid = (uid_t)-1;
++ debian_vhost_sock_gid = (gid_t)-1;
++ }
++ else {
++ RTE_LOG(INFO, EAL,"socket owner specified as %s (%d:%d)\n",
++ optarg, debian_vhost_sock_uid, debian_vhost_sock_gid);
++ }
++ break;
++
++ case OPT_VHOST_PERM_NUM:
++ debian_vhost_sock_perm = (mode_t)strtoul(optarg, NULL, 0);
++ RTE_LOG(INFO, EAL,"socket perm specified as '%#o' from '%s'\n",
++ debian_vhost_sock_perm, optarg);
++ break;
++
+ default:
+ if (opt < OPT_LONG_MIN_NUM && isprint(opt)) {
+ RTE_LOG(ERR, EAL, "Option %c is not supported "
+@@ -995,3 +1141,47 @@ rte_eal_check_module(const char *module_
+ /* Module has been found */
+ return 1;
+ }