当前位置: 首页>>代码示例>>C++>>正文


C++ CommandArgs::GetExecArgs方法代码示例

本文整理汇总了C++中CommandArgs::GetExecArgs方法的典型用法代码示例。如果您正苦于以下问题:C++ CommandArgs::GetExecArgs方法的具体用法?C++ CommandArgs::GetExecArgs怎么用?C++ CommandArgs::GetExecArgs使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CommandArgs的用法示例。


在下文中一共展示了CommandArgs::GetExecArgs方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: container_main

int container_main(void* arg)
{
    // no need to delete it because we execv finally.
    CommandArgs* args = reinterpret_cast<CommandArgs*>(arg);

    printf("Container [%d] - inside the container!\n", getpid());

    printf("Container: eUID = %ld;  eGID = %ld, UID=%ld, GID=%ld\n",
            (long) geteuid(), (long) getegid(), (long) getuid(), (long) getgid());

    char ch;
    close(pipefd[1]);
    int ret = read(pipefd[0], &ch, 1);
    if (ret < 0) {
        printf("Error: read failed: %d, %s\n", errno, strerror(errno));
        return 1;
    }

    close(pipefd[0]);

    printf("Container: eUID = %ld;  eGID = %ld, UID=%ld, GID=%ld\n",
            (long) geteuid(), (long) getegid(), (long) getuid(), (long) getgid());

    mount("proc", "/proc", "proc", 0, NULL);
    char** argv = args->GetExecArgs();
    execv(argv[0], argv);
    printf("Something's wrong!\n");
    return 1;
}
开发者ID:airekans,项目名称:container,代码行数:29,代码来源:main.cpp


注:本文中的CommandArgs::GetExecArgs方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。