[compiler-rt] Fix the prototype of ioctl interceptor
authorKuba Brecka <kuba.brecka@gmail.com>
Fri, 23 Jan 2015 19:17:20 +0000 (19:17 +0000)
committerKuba Brecka <kuba.brecka@gmail.com>
Fri, 23 Jan 2015 19:17:20 +0000 (19:17 +0000)
commitf1397fa7d799bee470816c31f4f75235ba1bab08
treedd4558a1f5740e00c1377c6382fb08f85e4488eb
parent6b7156b74ddf811a1a4d3eaed47eacdf817d6b10
[compiler-rt] Fix the prototype of ioctl interceptor

The interceptor of ioctl is using a non-standard prototype:

  INTERCEPTOR(int, ioctl, int d, unsigned request, void *arg)

At least on OS X, the request argument should be unsigned long and not
just unsigned, and also instead of the last argument (arg), the function
should be accepting a variable number of arguments, so the prototype
should be:

  int ioctl(int fildes, unsigned long request, ...);

We can still keep using `unsigned` internally to save space, because we
know that all possible values of `request` will fit into it.

Reviewed at http://reviews.llvm.org/D7038

llvm-svn: 226926
compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc