ret = openp(path, oflag, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_open,
- ret, 0, ret, FD_API_OPEN, "sdd", path, oflag, mode);
+ ret, 0, ret, FD_API_OPEN, "sdd", path, oflag, mode);
return ret;
}
ret = openatp(fd, path, oflag, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_openat,
- ret, 0, ret, FD_API_OPEN, "dsdd", fd, path, oflag, mode);
+ ret, 0, ret, FD_API_OPEN, "dsdd", fd, path, oflag, mode);
return ret;
}
ret = creatp(path, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_creat,
- ret, 0, ret, FD_API_OPEN, "sd", path, mode);
+ ret, 0, ret, FD_API_OPEN, "sd", path, mode);
return ret;
}
ret = faccessatp(fd, path, amode, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_faccessat,
- ret, 0, fd, FD_API_PERMISSION, "dsdd", fd, path, amode, flag);
+ ret, 0, fd, FD_API_PERMISSION, "dsdd", fd, path, amode, flag);
return ret;
}
offret = lseekp(fd, offset, whence);
AFTER_PACK_ORIGINAL_FD(API_ID_lseek,
- offret, (unsigned int)offset, fd, FD_API_OTHER,
- "dxd", fd, offset, whence);
+ offret, (unsigned int)offset, fd, FD_API_OTHER,
+ "dxd", fd, offset, whence);
return offret;
}
ret = fsyncp(fd);
AFTER_PACK_ORIGINAL_FD(API_ID_fsync,
- ret, 0, fd, FD_API_OTHER, "d", fd);
+ ret, 0, fd, FD_API_OTHER, "d", fd);
return ret;
}
ret = fdatasyncp(fd);
AFTER_PACK_ORIGINAL_FD(API_ID_fdatasync,
- ret, 0, fd, FD_API_OTHER, "d", fd);
+ ret, 0, fd, FD_API_OTHER, "d", fd);
return ret;
}
ret = ftruncatep(fd, length);
AFTER_PACK_ORIGINAL_FD(API_ID_ftruncate,
- ret, (unsigned int)length, fd, FD_API_DIRECTORY, "dx", fd, length);
+ ret, (unsigned int)length, fd, FD_API_DIRECTORY, "dx", fd, length);
return ret;
}
ret = mkfifoatp(fd, path, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_mkfifoat,
- ret, 0, fd, FD_API_OTHER, "dsd", fd, path, mode);
+ ret, 0, fd, FD_API_OTHER, "dsd", fd, path, mode);
return ret;
}
ret = mknodatp(fd,path, mode,dev);
AFTER_PACK_ORIGINAL_FD(API_ID_mknodat,
- ret, 0, fd, FD_API_OTHER,
+ ret, 0, fd, FD_API_OTHER,
"dsdx", fd, path, mode, (unsigned long int)dev);
return ret;
_filepath = (char*)path;
ret = fchownatp(fd, path, owner, group, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_fchownat,
- ret, 0, fd, FD_API_PERMISSION,
- "dsddd", fd, path, owner, group, flag);
+ ret, 0, fd, FD_API_PERMISSION,
+ "dsddd", fd, path, owner, group, flag);
return ret;
}
BEFORE_ORIGINAL_FILE(fchown, LIBC);
ret = fchownp(fd, owner, group);
AFTER_PACK_ORIGINAL_FD(API_ID_fchown,
- ret, 0, fd, FD_API_PERMISSION, "ddd", fd, owner, group);
+ ret, 0, fd, FD_API_PERMISSION, "ddd", fd, owner, group);
return ret;
}
BEFORE_ORIGINAL_FILE(lockf, LIBC);
ret = lockfp(fd, function, size);
AFTER_PACK_ORIGINAL_FD(API_ID_lockf,
- ret, (unsigned int)size, fd, FD_API_PERMISSION,
- "ddx", fd, function, size);
+ ret, (unsigned int)size, fd, FD_API_PERMISSION,
+ "ddx", fd, function, size);
return ret;
}
_filepath = (char*)path;
ret = fchmodatp(fd, path, mode, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_fchmodat,
- ret,0, fd, FD_API_PERMISSION,
- "dsdd", fd, path, mode, flag);
+ ret,0, fd, FD_API_PERMISSION,
+ "dsdd", fd, path, mode, flag);
return ret;
}
BEFORE_ORIGINAL_FILE(fchmod, LIBC);
ret = fchmodp(fd, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_fchmod,
- ret, 0, fd, FD_API_PERMISSION, "dd", fd, mode);
+ ret, 0, fd, FD_API_PERMISSION, "dd", fd, mode);
return ret;
}
BEFORE_ORIGINAL_FILE(pread, LIBC);
+ FILE_API_START_BLOCK(API_ID_pread, FD_API_READ_START);
+
sret = preadp(fd, buf, nbyte, offset);
AFTER_PACK_ORIGINAL_FD(API_ID_pread,
- sret, (unsigned int)sret, fd, FD_API_READ,
- "dpxx", fd, buf, nbyte, offset);
+ sret, (unsigned int)sret, fd, FD_API_READ_END,
+ "dpxx", fd, buf, nbyte, offset);
return sret;
}
BEFORE_ORIGINAL_FILE(read, LIBC);
+ FILE_API_START_BLOCK(API_ID_read, FD_API_READ_START);
+
sret = readp(fd, buf, nbyte);
AFTER_PACK_ORIGINAL_FD(API_ID_read,
- sret, (unsigned int)sret, fd, FD_API_READ,
- "dpx", fd, buf, nbyte);
+ sret, (unsigned int)sret, fd, FD_API_READ_END,
+ "dpx", fd, buf, nbyte);
return sret;
}
BEFORE_ORIGINAL_FILE(pwrite, LIBC);
+ FILE_API_START_BLOCK(API_ID_pwrite, FD_API_WRITE_START);
+
sret = pwritep(fd, buf, nbyte, offset);
AFTER_PACK_ORIGINAL_FD(API_ID_pwrite,
- sret, (unsigned int)sret, fd, FD_API_WRITE,
- "dpxx", fd, buf, nbyte, offset);
+ sret, (unsigned int)sret, fd, FD_API_WRITE_END,
+ "dpxx", fd, buf, nbyte, offset);
return sret;
}
BEFORE_ORIGINAL_FILE(write, LIBC);
+ FILE_API_START_BLOCK(API_ID_write, FD_API_WRITE_START);
+
sret = writep(fd, buf, nbyte);
AFTER_PACK_ORIGINAL_FD(API_ID_write,
- sret, (unsigned int)sret, fd, FD_API_WRITE,
- "dpx", fd, buf, nbyte);
+ sret, (unsigned int)sret, fd, FD_API_WRITE_END,
+ "dpx", fd, buf, nbyte);
return sret;
}
ssize_t sret;
BEFORE_ORIGINAL_FILE(readv, LIBC);
+
+ FILE_API_START_BLOCK(API_ID_readv, FD_API_READ_START);
+
sret = readvp(fd,iov,iovcnt);
AFTER_PACK_ORIGINAL_FD(API_ID_readv,
- sret, (unsigned int)sret, fd, FD_API_READ,
- "dpd", fd, iov, iovcnt);
+ sret, (unsigned int)sret, fd, FD_API_READ_END,
+ "dpd", fd, iov, iovcnt);
return sret;
}
BEFORE_ORIGINAL_FILE(fchdir, LIBC);
ret = fchdirp(fd);
AFTER_PACK_ORIGINAL_FD(API_ID_fchdir,
- ret, 0, fd, FD_API_DIRECTORY, "d", fd);
+ ret, 0, fd, FD_API_DIRECTORY, "d", fd);
return ret;
}
_filepath = (char*)path1;
ret = linkatp(fd1, path1, fd2, path2, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_linkat,
- ret, 0, fd2, FD_API_DIRECTORY,
- "dsdsd", fd1, path2, fd2, path2, flag);
+ ret, 0, fd2, FD_API_DIRECTORY,
+ "dsdsd", fd1, path2, fd2, path2, flag);
return ret;
}
_filepath = (char*)path;
ret = unlinkatp(fd, path, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_unlinkat,
- ret, 0, fd, FD_API_DIRECTORY, "dsd", fd, path, flag);
+ ret, 0, fd, FD_API_DIRECTORY, "dsd", fd, path, flag);
return ret;
}
_filepath = (char*)path1;
ret = symlinkatp(path1, fd, path2);
AFTER_PACK_ORIGINAL_FD(API_ID_symlinkat,
- ret, 0, fd, FD_API_DIRECTORY, "sds", path1, fd, path2);
+ ret, 0, fd, FD_API_DIRECTORY, "sds", path1, fd, path2);
return ret;
}
sret = readlinkatp(fd, path, buf, bufsize);
AFTER_PACK_ORIGINAL_FD(API_ID_readlinkat,
- sret, bufsize, fd, FD_API_DIRECTORY,
- "dssx", fd, path, buf, bufsize);
+ sret, bufsize, fd, FD_API_DIRECTORY,
+ "dssx", fd, path, buf, bufsize);
return sret;
}
_filepath = (char*)path;
ret = mkdiratp(fd, path, mode);
AFTER_PACK_ORIGINAL_FD(API_ID_mkdirat,
- ret, 0, fd, FD_API_DIRECTORY, "dsd", fd, path, mode);
+ ret, 0, fd, FD_API_DIRECTORY, "dsd", fd, path, mode);
return ret;
}
dret = fdopendirp(fd);
AFTER_PACK_ORIGINAL_FD(API_ID_fdopendir,
- dret, 0, fd, FD_API_DIRECTORY, "d", fd);
+ dret, 0, fd, FD_API_DIRECTORY, "d", fd);
return dret;
}
ret = fcntlp(fd, cmd, arg);
AFTER_PACK_ORIGINAL_FD(API_ID_fcntl,
- ret, 0, fd, FD_API_OTHER, "ddd", fd, cmd, arg);
+ ret, 0, fd, FD_API_OTHER, "ddd", fd, cmd, arg);
return ret;
}
ret = dupp(fd);
AFTER_PACK_ORIGINAL_FD(API_ID_dup,
- ret, 0, ret, FD_API_OPEN, "d", fd);
+ ret, 0, ret, FD_API_OPEN, "d", fd);
return ret;
}
ret = dup2p(fd, fd2);
AFTER_PACK_ORIGINAL_FD(API_ID_dup2,
- ret, 0, ret, FD_API_OPEN, "dd", fd, fd2);
+ ret, 0, ret, FD_API_OPEN, "dd", fd, fd2);
return ret;
}
_filepath = (char*)path;
ret = fstatatp(fd, path, buf, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_fstatat,
- ret, 0, fd, FD_API_OTHER, "dspd", fd, path, buf, flag);
+ ret, 0, fd, FD_API_OTHER, "dspd", fd, path, buf, flag);
return ret;
}
BEFORE_ORIGINAL_FILE(futimens, LIBC);
ret = futimensp(fd, times);
AFTER_PACK_ORIGINAL_FD(API_ID_futimens,
- ret, 0, fd, FD_API_OTHER, "dp", fd, times);
+ ret, 0, fd, FD_API_OTHER, "dp", fd, times);
return ret;
}
_filepath = (char*)path;
ret = utimensatp(fd, path, times, flag);
AFTER_PACK_ORIGINAL_FD(API_ID_utimensat,
- ret, 0, fd, FD_API_OTHER, "dspd", fd, path, times, flag);
+ ret, 0, fd, FD_API_OTHER, "dspd", fd, path, times, flag);
return ret;
}
static int (*vfprintfp)(FILE* stream, const char* format, va_list arg);
BEFORE_ORIGINAL_FILE(vfprintf, LIBC);
+ FILE_API_START_BLOCK(API_ID_vfprintf, FD_API_WRITE_START);
ret = vfprintfp(stream, format, arg);
AFTER_PACK_ORIGINAL_FILEP(API_ID_vfprintf,
- ret, ret, stream, FD_API_WRITE, "ps", stream, format);
+ ret, ret, stream, FD_API_WRITE_END, "ps", stream, format);
return ret;
}
static int (*vfscanfp)(FILE* stream, const char* format, va_list arg);
BEFORE_ORIGINAL_FILE(vfscanf, LIBC);
+ FILE_API_START_BLOCK(API_ID_vfscanf, FD_API_READ_START);
ret = vfscanfp(stream, format, arg);
AFTER_PACK_ORIGINAL_FILEP(API_ID_vfscanf,
- ret, ret, stream, FD_API_READ, "ps", stream, format);
+ ret, ret, stream, FD_API_READ_END, "ps", stream, format);
return ret;
}
static int (*fgetcp)(FILE* stream);
BEFORE_ORIGINAL_FILE(fgetc, LIBC);
+ FILE_API_START_BLOCK(API_ID_fgetc, FD_API_READ_START);
ret = fgetcp(stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fgetc,
- ret, (ret == EOF ? 0 : 1), stream, FD_API_READ, "p", stream);
+ ret, (ret == EOF ? 0 : 1), stream, FD_API_READ_END, "p", stream);
return ret;
}
char* cret;
BEFORE_ORIGINAL_FILE(fgets, LIBC);
+
+ FILE_API_START_BLOCK(API_ID_fgets, FD_API_READ_START);
cret = fgetsp(str, size, stream);
- AFTER_PACK_ORIGINAL_FILEP(cret, (ret == NULL ? 0 : strlen(cret)),
- stream, FD_API_READ, "sdp", str, size, stream);
+ AFTER_PACK_ORIGINAL_FILEP(API_ID_fgets, cret, (ret == NULL ? 0 : strlen(cret)),
+ stream, FD_API_READ_END, "sdp", str, size, stream);
return cret;
}
static int (*fputcp)(int character, FILE* stream);
BEFORE_ORIGINAL_FILE(fputc, LIBC);
+ FILE_API_START_BLOCK(API_ID_fputc, FD_API_WRITE_START);
ret = fputcp(character, stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fputc,
- ret, (ret == EOF ? 0 : 1), stream, FD_API_WRITE,
+ ret, (ret == EOF ? 0 : 1), stream, FD_API_WRITE_END,
"dp", character, stream);
return ret;
}
static int (*fputsp)(const char* str, FILE* stream);
BEFORE_ORIGINAL_FILE(fputs, LIBC);
+ FILE_API_START_BLOCK(API_ID_fputs, FD_API_WRITE_START);
ret = fputsp(str, stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fputs,
- ret, ret, stream, FD_API_WRITE, "sp", str, stream);
+ ret, ret, stream, FD_API_WRITE_END, "sp", str, stream);
return ret;
}
static int (*getcp)(FILE* stream);
BEFORE_ORIGINAL_FILE(getc, LIBC);
+ FILE_API_START_BLOCK(API_ID_getc, FD_API_READ_START);
ret = getcp(stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_getc,
- ret, (ret == EOF ? 0 : 1), stream, FD_API_READ, "p", stream);
+ ret, (ret == EOF ? 0 : 1), stream, FD_API_READ_END, "p", stream);
return ret;
}
static int (*putcp)(int character, FILE* stream);
BEFORE_ORIGINAL_FILE(putc, LIBC);
+ FILE_API_START_BLOCK(API_ID_putc, FD_API_WRITE_START);
ret = putcp(character, stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_putc,
- ret, (ret == EOF ? 0 : 1), stream, FD_API_WRITE,
+ ret, (ret == EOF ? 0 : 1), stream, FD_API_WRITE_END,
"dp", character, stream);
return ret;
}
BEFORE_ORIGINAL_FILE(fread, LIBC);
+ FILE_API_START_BLOCK(API_ID_fread, FD_API_READ_START);
+
tret = freadp(ptr, size, count, stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fread,
- tret, 0, stream, FD_API_READ,
+ tret, 0, stream, FD_API_READ_END,
"pxxp", ptr, size, count, stream);
return tret;
BEFORE_ORIGINAL_FILE(fwrite, LIBC);
+ FILE_API_START_BLOCK(API_ID_fwrite, FD_API_WRITE_START);
+
tret = fwritep(ptr, size, count, stream);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fwrite,
- tret, 0, stream, FD_API_WRITE,
+ tret, 0, stream, FD_API_WRITE_END,
"pxxp", ptr, size, count, stream);
return tret;
BEFORE_ORIGINAL_FILE(vfprintf, LIBC);
+ FILE_API_START_BLOCK(API_ID_fprintf, FD_API_WRITE_START);
+
va_list arg;
va_start(arg, format);
ret = vfprintfp(stream, format, arg);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fprintf,
- ret, ret, stream, FD_API_WRITE, "ps", stream, format);
+ ret, ret, stream, FD_API_WRITE_END, "ps", stream, format);
va_end(arg);
return ret;
BEFORE_ORIGINAL_FILE(vfscanf, LIBC);
+ FILE_API_START_BLOCK(API_ID_fscanf, FD_API_READ_START);
+
va_list arg;
va_start(arg, format);
ret = vfscanfp(stream, format, arg);
AFTER_PACK_ORIGINAL_FILEP(API_ID_fscanf,
- ret, ret, stream, FD_API_READ, "ps", stream, format);
+ ret, ret, stream, FD_API_READ_END, "ps", stream, format);
va_end(arg);
return ret;
BEFORE_ORIGINAL_FILE(vprintf, LIBC);
+ FILE_API_START_BLOCK(API_ID_printf, FD_API_WRITE_START);
+
va_list arg;
va_start(arg, format);
ret = vprintfp(format, arg);
AFTER_PACK_ORIGINAL_NOFD(API_ID_printf,
- ret, ret, FD_API_WRITE, "s", format);
+ ret, ret, FD_API_WRITE_END, "s", format);
va_end(arg);
return ret;
BEFORE_ORIGINAL_FILE(vscanf, LIBC);
+ FILE_API_START_BLOCK(API_ID_scanf, FD_API_READ_START);
+
va_list arg;
va_start(arg, format);
ret = vscanfp(format, arg);
AFTER_PACK_ORIGINAL_NOFD(API_ID_scanf,
- ret, ret, FD_API_READ, "s", format);
+ ret, ret, FD_API_READ_END, "s", format);
va_end(arg);
return ret;
static int (*getcharp)();
BEFORE_ORIGINAL_FILE(getchar, LIBC);
+ FILE_API_START_BLOCK(API_ID_getchar, FD_API_READ_START);
ret = getcharp();
AFTER_PACK_ORIGINAL_NOFD(API_ID_getchar,
- ret, (ret == EOF ? 0 : 1), FD_API_READ, "s", "");
+ ret, (ret == EOF ? 0 : 1), FD_API_READ_END, "s", "");
return ret;
}
static int (*putcharp)(int c);
BEFORE_ORIGINAL_FILE(putchar, LIBC);
+ FILE_API_START_BLOCK(API_ID_putchar, FD_API_WRITE_START);
ret = putcharp(c);
AFTER_PACK_ORIGINAL_NOFD(API_ID_putchar,
- ret, (ret == EOF ? 0 : 1), FD_API_WRITE, "d", c);
+ ret, (ret == EOF ? 0 : 1), FD_API_WRITE_END, "d", c);
return ret;
}
BEFORE_ORIGINAL_FILE(gets, LIBC);
+ FILE_API_START_BLOCK(API_ID_gets, FD_API_READ_START);
+
cret = getsp(str);
AFTER_PACK_ORIGINAL_NOFD(API_ID_gets,
- cret, strlen(cret), FD_API_READ, "s", str);
+ cret, strlen(cret), FD_API_READ_END, "s", str);
return cret;
}
static int (*putsp)(const char* str);
BEFORE_ORIGINAL_FILE(puts, LIBC);
+ FILE_API_START_BLOCK(API_ID_puts, FD_API_WRITE_START);
ret = putsp(str);
AFTER_PACK_ORIGINAL_NOFD(API_ID_puts,
- ret, ret, FD_API_WRITE, "s", str);
+ ret, ret, FD_API_WRITE_END, "s", str);
return ret;
}
#endif