if (ret < 0)
goto err_out;
/* valid command and sufficient perms */
- argc = split_args(command, &argv, "\n");
+ ret = create_argv(command, "\n", &argv);
+ if (ret < 0)
+ goto err_out;
+ argc = ret;
PARA_NOTICE_LOG("calling com_%s() for %s@%s\n", cmd->name, u->name,
peername);
ret = cmd->handler(&rc4c, argc, argv);
+ free_argv(argv);
mutex_lock(mmd_mutex);
mmd->num_commands++;
mutex_unlock(mmd_mutex);
PARA_NOTICE_LOG("%s\n", para_strerror(-ret));
out:
free(command);
- free(argv);
mutex_lock(mmd_mutex);
if (cmd && (cmd->perms & AFS_WRITE) && ret >= 0)
mmd->events++;