计算克隆函数的变量参数数量
作者:互联网
我正在尝试LD_PRELOAD linux的克隆功能.在我的LD_PRELOADed版本中,需要在调用原始克隆函数之前记录输入参数.但是,问题是克隆使用可变数量的参数.这样声明.
int clone(int (*fn)(void *), void *child_stack, int flags, void *arg, ...
/* pid_t *pid, struct user_desc *tls, pid_t *ctid */ );
现在要将这些参数传递给原始的克隆函数,我必须知道传递的参数数目.我该怎么做?
解决方法:
如果存在NULL终止符,则可以在不返回NULL的情况下调用va_arg.
标签:x86-64,gcc,variadic-functions,c-3,linux 来源: https://codeday.me/bug/20191101/1981573.html