Lines Matching refs:pcmd
230 pcmd("//===-- netbsd_syscall_hooks.h --------------------------------------------===//")
231 pcmd("//")
232 pcmd("// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.")
233 pcmd("// See https://llvm.org/LICENSE.txt for license information.")
234 pcmd("// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception")
235 pcmd("//")
236 pcmd("//===----------------------------------------------------------------------===//")
237 pcmd("//")
238 pcmd("// This file is a part of public sanitizer interface.")
239 pcmd("//")
240 pcmd("// System call handlers.")
241 pcmd("//")
242 pcmd("// Interface methods declared in this header implement pre- and post- syscall")
243 pcmd("// actions for the active sanitizer.")
244 pcmd("// Usage:")
245 pcmd("// __sanitizer_syscall_pre_getfoo(...args...);")
246 pcmd("// long long res = syscall(SYS_getfoo, ...args...);")
247 pcmd("// __sanitizer_syscall_post_getfoo(res, ...args...);")
248 pcmd("//")
249 pcmd("// DO NOT EDIT! THIS FILE HAS BEEN GENERATED!")
250 pcmd("//")
251 pcmd("// Generated with: " script_name)
252 pcmd("// Generated date: " strftime("%F"))
253 pcmd("// Generated from: " syscallmasterversion)
254 pcmd("//")
255 pcmd("//===----------------------------------------------------------------------===//")
256 pcmd("#ifndef SANITIZER_NETBSD_SYSCALL_HOOKS_H")
257 pcmd("#define SANITIZER_NETBSD_SYSCALL_HOOKS_H")
258 pcmd("")
263 pcmd(ifelifelseendif[i])
269 pcmd("/* syscall " substr(sn,2) " has been skipped */")
287 pcmd("#define __sanitizer_syscall_pre_" sn "(" inargs ") \\")
288 pcmd(" __sanitizer_syscall_pre_impl_" sn "(" outargs ")")
302 pcmd("#define __sanitizer_syscall_post_" sn "(" inargs ") \\")
303 pcmd(" __sanitizer_syscall_post_impl_" sn "(" outargs ")")
306 pcmd("")
307 pcmd("/* Compat with older releases */")
308 pcmd("#define __sanitizer_syscall_pre_getvfsstat __sanitizer_syscall_pre_compat_90_getvfsstat")
309 pcmd("#define __sanitizer_syscall_post_getvfsstat __sanitizer_syscall_post_compat_90_getvfsstat")
310 pcmd("")
311 pcmd("#define __sanitizer_syscall_pre_statvfs1 __sanitizer_syscall_pre_compat_90_statvfs1")
312 pcmd("#define __sanitizer_syscall_post_statvfs1 __sanitizer_syscall_post_compat_90_statvfs1")
313 pcmd("")
314 pcmd("#define __sanitizer_syscall_pre_fstatvfs1 __sanitizer_syscall_pre_compat_90_fstatvfs1")
315 pcmd("#define __sanitizer_syscall_post_fstatvfs1 __sanitizer_syscall_post_compat_90_fstatvfs1")
316 pcmd("")
317 …pcmd("#define __sanitizer_syscall_pre___fhstatvfs140 __sanitizer_syscall_pre_compat_90_fhstatvfs1")
318 …pcmd("#define __sanitizer_syscall_post___fhstatvfs140 __sanitizer_syscall_post_compat_90_fhstatvfs…
320 pcmd("")
321 pcmd("#ifdef __cplusplus")
322 pcmd("extern \"C\" {")
323 pcmd("#endif")
324 pcmd("")
325 pcmd("// Private declarations. Do not call directly from user code. Use macros above.")
326 pcmd("")
327 pcmd("// DO NOT EDIT! THIS FILE HAS BEEN GENERATED!")
328 pcmd("")
333 pcmd(ifelifelseendif[i])
339 pcmd("/* syscall " substr(sn,2) " has been skipped */")
356 pcmd("void __sanitizer_syscall_pre_impl_" sn "(" preargs ");")
357 pcmd("void __sanitizer_syscall_post_impl_" sn "(" postargs ");")
360 pcmd("")
361 pcmd("#ifdef __cplusplus")
362 pcmd("} // extern \"C\"")
363 pcmd("#endif")
365 pcmd("")
366 pcmd("// DO NOT EDIT! THIS FILE HAS BEEN GENERATED!")
367 pcmd("")
369 pcmd("#endif // SANITIZER_NETBSD_SYSCALL_HOOKS_H")
378 pcmd("//===-- sanitizer_syscalls_netbsd.inc ---------------------------*- C++ -*-===//")
379 pcmd("//")
380 pcmd("// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.")
381 pcmd("// See https://llvm.org/LICENSE.txt for license information.")
382 pcmd("// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception")
383 pcmd("//")
384 pcmd("//===----------------------------------------------------------------------===//")
385 pcmd("//")
386 pcmd("// Common syscalls handlers for tools like AddressSanitizer,")
387 pcmd("// ThreadSanitizer, MemorySanitizer, etc.")
388 pcmd("//")
389 pcmd("// This file should be included into the tool's interceptor file,")
390 pcmd("// which has to define it's own macros:")
391 pcmd("// COMMON_SYSCALL_PRE_READ_RANGE")
392 pcmd("// Called in prehook for regions that will be read by the kernel and")
393 pcmd("// must be initialized.")
394 pcmd("// COMMON_SYSCALL_PRE_WRITE_RANGE")
395 pcmd("// Called in prehook for regions that will be written to by the kernel")
396 pcmd("// and must be addressable. The actual write range may be smaller than")
397 pcmd("// reported in the prehook. See POST_WRITE_RANGE.")
398 pcmd("// COMMON_SYSCALL_POST_READ_RANGE")
399 pcmd("// Called in posthook for regions that were read by the kernel. Does")
400 pcmd("// not make much sense.")
401 pcmd("// COMMON_SYSCALL_POST_WRITE_RANGE")
402 pcmd("// Called in posthook for regions that were written to by the kernel")
403 pcmd("// and are now initialized.")
404 pcmd("// COMMON_SYSCALL_ACQUIRE(addr)")
405 pcmd("// Acquire memory visibility from addr.")
406 pcmd("// COMMON_SYSCALL_RELEASE(addr)")
407 pcmd("// Release memory visibility to addr.")
408 pcmd("// COMMON_SYSCALL_FD_CLOSE(fd)")
409 pcmd("// Called before closing file descriptor fd.")
410 pcmd("// COMMON_SYSCALL_FD_ACQUIRE(fd)")
411 pcmd("// Acquire memory visibility from fd.")
412 pcmd("// COMMON_SYSCALL_FD_RELEASE(fd)")
413 pcmd("// Release memory visibility to fd.")
414 pcmd("// COMMON_SYSCALL_PRE_FORK()")
415 pcmd("// Called before fork syscall.")
416 pcmd("// COMMON_SYSCALL_POST_FORK(long long res)")
417 pcmd("// Called after fork syscall.")
418 pcmd("//")
419 pcmd("// DO NOT EDIT! THIS FILE HAS BEEN GENERATED!")
420 pcmd("//")
421 pcmd("// Generated with: " script_name)
422 pcmd("// Generated date: " strftime("%F"))
423 pcmd("// Generated from: " syscallmasterversion)
424 pcmd("//")
425 pcmd("//===----------------------------------------------------------------------===//")
426 pcmd("")
427 pcmd("#include \"sanitizer_platform.h\"")
428 pcmd("#if SANITIZER_NETBSD")
429 pcmd("")
430 pcmd("#include \"sanitizer_libc.h\"")
431 pcmd("")
432 pcmd("#define PRE_SYSCALL(name) \\")
433 pcmd(" SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_syscall_pre_impl_##name")
434 pcmd("#define PRE_READ(p, s) COMMON_SYSCALL_PRE_READ_RANGE(p, s)")
435 pcmd("#define PRE_WRITE(p, s) COMMON_SYSCALL_PRE_WRITE_RANGE(p, s)")
436 pcmd("")
437 pcmd("#define POST_SYSCALL(name) \\")
438 pcmd(" SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_syscall_post_impl_##name")
439 pcmd("#define POST_READ(p, s) COMMON_SYSCALL_POST_READ_RANGE(p, s)")
440 pcmd("#define POST_WRITE(p, s) COMMON_SYSCALL_POST_WRITE_RANGE(p, s)")
441 pcmd("")
442 pcmd("#ifndef COMMON_SYSCALL_ACQUIRE")
443 pcmd("# define COMMON_SYSCALL_ACQUIRE(addr) ((void)(addr))")
444 pcmd("#endif")
445 pcmd("")
446 pcmd("#ifndef COMMON_SYSCALL_RELEASE")
447 pcmd("# define COMMON_SYSCALL_RELEASE(addr) ((void)(addr))")
448 pcmd("#endif")
449 pcmd("")
450 pcmd("#ifndef COMMON_SYSCALL_FD_CLOSE")
451 pcmd("# define COMMON_SYSCALL_FD_CLOSE(fd) ((void)(fd))")
452 pcmd("#endif")
453 pcmd("")
454 pcmd("#ifndef COMMON_SYSCALL_FD_ACQUIRE")
455 pcmd("# define COMMON_SYSCALL_FD_ACQUIRE(fd) ((void)(fd))")
456 pcmd("#endif")
457 pcmd("")
458 pcmd("#ifndef COMMON_SYSCALL_FD_RELEASE")
459 pcmd("# define COMMON_SYSCALL_FD_RELEASE(fd) ((void)(fd))")
460 pcmd("#endif")
461 pcmd("")
462 pcmd("#ifndef COMMON_SYSCALL_PRE_FORK")
463 pcmd("# define COMMON_SYSCALL_PRE_FORK() {}")
464 pcmd("#endif")
465 pcmd("")
466 pcmd("#ifndef COMMON_SYSCALL_POST_FORK")
467 pcmd("# define COMMON_SYSCALL_POST_FORK(res) {}")
468 pcmd("#endif")
469 pcmd("")
470 pcmd("// FIXME: do some kind of PRE_READ for all syscall arguments (int(s) and such).")
471 pcmd("")
472 pcmd("extern \"C\" {")
473 pcmd("#define SYS_MAXSYSARGS " SYS_MAXSYSARGS)
478 pcmd(ifelifelseendif[i])
484 pcmd("/* syscall " substr(sn,2) " has been skipped */")
502 pcmd("PRE_SYSCALL(" sn ")(" preargs ")")
503 pcmd("{")
505 pcmd("}")
507 pcmd("POST_SYSCALL(" sn ")(" postargs ")")
508 pcmd("{")
510 pcmd("}")
513 pcmd("#undef SYS_MAXSYSARGS")
514 pcmd("} // extern \"C\"")
515 pcmd("")
516 pcmd("#undef PRE_SYSCALL")
517 pcmd("#undef PRE_READ")
518 pcmd("#undef PRE_WRITE")
519 pcmd("#undef POST_SYSCALL")
520 pcmd("#undef POST_READ")
521 pcmd("#undef POST_WRITE")
522 pcmd("")
523 pcmd("#endif // SANITIZER_NETBSD")
538 function pcmd(string) function
548 pcmd("/* Nothing to do */")
550 pcmd("/* Nothing to do */")
553 pcmd("COMMON_SYSCALL_PRE_FORK();")
555 pcmd("COMMON_SYSCALL_POST_FORK(res);")
559 pcmd("if (buf_) {")
560 pcmd(" PRE_WRITE(buf_, nbyte_);")
561 pcmd("}")
563 pcmd("if (res > 0) {")
564 pcmd(" POST_WRITE(buf_, res);")
565 pcmd("}")
569 pcmd("if (buf_) {")
570 pcmd(" PRE_READ(buf_, nbyte_);")
571 pcmd("}")
573 pcmd("if (res > 0) {")
574 pcmd(" POST_READ(buf_, res);")
575 pcmd("}")
579 pcmd("const char *path = (const char *)path_;")
580 pcmd("if (path) {")
581 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
582 pcmd("}")
584 pcmd("if (res > 0) {")
585 pcmd(" const char *path = (const char *)path_;")
586 pcmd(" if (path) {")
587 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
588 pcmd(" }")
589 pcmd("}")
593 pcmd("COMMON_SYSCALL_FD_CLOSE((int)fd_);")
595 pcmd("/* Nothing to do */")
598 pcmd("/* TODO */")
600 pcmd("/* TODO */")
603 pcmd("const char *path = (const char *)path_;")
604 pcmd("const char *link = (const char *)link_;")
605 pcmd("if (path) {")
606 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
607 pcmd("}")
608 pcmd("if (link) {")
609 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(link) + 1);")
610 pcmd("}")
612 pcmd("if (res == 0) {")
613 pcmd(" const char *path = (const char *)path_;")
614 pcmd(" const char *link = (const char *)link_;")
615 pcmd(" if (path) {")
616 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
617 pcmd(" }")
618 pcmd(" if (link) {")
619 pcmd(" POST_READ(path, __sanitizer::internal_strlen(link) + 1);")
620 pcmd(" }")
621 pcmd("}")
625 pcmd("const char *path = (const char *)path_;")
626 pcmd("if (path) {")
627 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
628 pcmd("}")
630 pcmd("if (res == 0) {")
631 pcmd(" const char *path = (const char *)path_;")
632 pcmd(" if (path) {")
633 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
634 pcmd(" }")
635 pcmd("}")
639 pcmd("const char *path = (const char *)path_;")
640 pcmd("if (path) {")
641 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
642 pcmd("}")
644 pcmd("if (res == 0) {")
645 pcmd(" const char *path = (const char *)path_;")
646 pcmd(" if (path) {")
647 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
648 pcmd(" }")
649 pcmd("}")
652 pcmd("/* Nothing to do */")
654 pcmd("/* TODO */")
657 pcmd("const char *path = (const char *)path_;")
658 pcmd("if (path) {")
659 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
660 pcmd("}")
662 pcmd("if (res == 0) {")
663 pcmd(" const char *path = (const char *)path_;")
664 pcmd(" if (path) {")
665 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
666 pcmd(" }")
667 pcmd("}")
671 pcmd("const char *path = (const char *)path_;")
672 pcmd("if (path) {")
673 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
674 pcmd("}")
676 pcmd("if (res == 0) {")
677 pcmd(" const char *path = (const char *)path_;")
678 pcmd(" if (path) {")
679 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
680 pcmd(" }")
681 pcmd("}")
684 pcmd("/* Nothing to do */")
686 pcmd("/* TODO */")
688 pcmd("/* TODO */")
690 pcmd("/* Nothing to do */")
692 pcmd("/* TODO */")
695 pcmd("const char *path = (const char *)path_;")
696 pcmd("if (path) {")
697 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
698 pcmd("}")
700 pcmd("if (res == 0) {")
701 pcmd(" const char *path = (const char *)path_;")
702 pcmd(" if (path) {")
703 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
704 pcmd(" }")
705 pcmd("}")
708 pcmd("/* Nothing to do */")
710 pcmd("/* Nothing to do */")
712 pcmd("/* Nothing to do */")
715 pcmd("if (req_ == ptrace_pt_io) {")
716 … pcmd(" struct __sanitizer_ptrace_io_desc *addr = (struct __sanitizer_ptrace_io_desc *)addr_;")
717 pcmd(" PRE_READ(addr, struct_ptrace_ptrace_io_desc_struct_sz);")
718 pcmd(" if (addr->piod_op == ptrace_piod_write_d || addr->piod_op == ptrace_piod_write_i) {")
719 pcmd(" PRE_READ(addr->piod_addr, addr->piod_len);")
720 pcmd(" }")
721 …pcmd(" if (addr->piod_op == ptrace_piod_read_d || addr->piod_op == ptrace_piod_read_i || addr->pi…
722 pcmd(" PRE_WRITE(addr->piod_addr, addr->piod_len);")
723 pcmd(" }")
724 pcmd("} else if (req_ == ptrace_pt_lwpinfo) {")
725 … pcmd(" struct __sanitizer_ptrace_lwpinfo *addr = (struct __sanitizer_ptrace_lwpinfo *)addr_;")
726 pcmd(" PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
727 pcmd(" PRE_WRITE(addr, struct_ptrace_ptrace_lwpinfo_struct_sz);")
728 pcmd("} else if (req_ == ptrace_pt_set_event_mask) {")
729 pcmd(" PRE_READ(addr_, struct_ptrace_ptrace_event_struct_sz);")
730 pcmd("} else if (req_ == ptrace_pt_get_event_mask) {")
731 pcmd(" PRE_WRITE(addr_, struct_ptrace_ptrace_event_struct_sz);")
732 pcmd("} else if (req_ == ptrace_pt_set_siginfo) {")
733 pcmd(" PRE_READ(addr_, struct_ptrace_ptrace_siginfo_struct_sz);")
734 pcmd("} else if (req_ == ptrace_pt_get_siginfo) {")
735 pcmd(" PRE_WRITE(addr_, struct_ptrace_ptrace_siginfo_struct_sz);")
736 pcmd("} else if (req_ == ptrace_pt_lwpstatus) {")
737 …pcmd(" struct __sanitizer_ptrace_lwpstatus *addr = (struct __sanitizer_ptrace_lwpstatus *)addr_;")
738 pcmd(" PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
739 pcmd(" PRE_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);")
740 pcmd("} else if (req_ == ptrace_pt_lwpnext) {")
741 …pcmd(" struct __sanitizer_ptrace_lwpstatus *addr = (struct __sanitizer_ptrace_lwpstatus *)addr_;")
742 pcmd(" PRE_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
743 pcmd(" PRE_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);")
744 pcmd("} else if (req_ == ptrace_pt_setregs) {")
745 pcmd(" PRE_READ(addr_, struct_ptrace_reg_struct_sz);")
746 pcmd("} else if (req_ == ptrace_pt_getregs) {")
747 pcmd(" PRE_WRITE(addr_, struct_ptrace_reg_struct_sz);")
748 pcmd("} else if (req_ == ptrace_pt_setfpregs) {")
749 pcmd(" PRE_READ(addr_, struct_ptrace_fpreg_struct_sz);")
750 pcmd("} else if (req_ == ptrace_pt_getfpregs) {")
751 pcmd(" PRE_WRITE(addr_, struct_ptrace_fpreg_struct_sz);")
752 pcmd("} else if (req_ == ptrace_pt_setdbregs) {")
753 pcmd(" PRE_READ(addr_, struct_ptrace_dbreg_struct_sz);")
754 pcmd("} else if (req_ == ptrace_pt_getdbregs) {")
755 pcmd(" PRE_WRITE(addr_, struct_ptrace_dbreg_struct_sz);")
756 pcmd("}")
758 pcmd("if (res == 0) {")
759 pcmd(" if (req_ == ptrace_pt_io) {")
760 … pcmd(" struct __sanitizer_ptrace_io_desc *addr = (struct __sanitizer_ptrace_io_desc *)addr_;")
761 pcmd(" POST_READ(addr, struct_ptrace_ptrace_io_desc_struct_sz);")
762 … pcmd(" if (addr->piod_op == ptrace_piod_write_d || addr->piod_op == ptrace_piod_write_i) {")
763 pcmd(" POST_READ(addr->piod_addr, addr->piod_len);")
764 pcmd(" }")
765 …pcmd(" if (addr->piod_op == ptrace_piod_read_d || addr->piod_op == ptrace_piod_read_i || addr->…
766 pcmd(" POST_WRITE(addr->piod_addr, addr->piod_len);")
767 pcmd(" }")
768 pcmd(" } else if (req_ == ptrace_pt_lwpinfo) {")
769 … pcmd(" struct __sanitizer_ptrace_lwpinfo *addr = (struct __sanitizer_ptrace_lwpinfo *)addr_;")
770 pcmd(" POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
771 pcmd(" POST_WRITE(addr, struct_ptrace_ptrace_lwpinfo_struct_sz);")
772 pcmd(" } else if (req_ == ptrace_pt_set_event_mask) {")
773 pcmd(" POST_READ(addr_, struct_ptrace_ptrace_event_struct_sz);")
774 pcmd(" } else if (req_ == ptrace_pt_get_event_mask) {")
775 pcmd(" POST_WRITE(addr_, struct_ptrace_ptrace_event_struct_sz);")
776 pcmd(" } else if (req_ == ptrace_pt_set_siginfo) {")
777 pcmd(" POST_READ(addr_, struct_ptrace_ptrace_siginfo_struct_sz);")
778 pcmd(" } else if (req_ == ptrace_pt_get_siginfo) {")
779 pcmd(" POST_WRITE(addr_, struct_ptrace_ptrace_siginfo_struct_sz);")
780 pcmd(" } else if (req_ == ptrace_pt_lwpstatus) {")
781 …pcmd(" struct __sanitizer_ptrace_lwpstatus *addr = (struct __sanitizer_ptrace_lwpstatus *)addr_…
782 pcmd(" POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
783 pcmd(" POST_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);")
784 pcmd(" } else if (req_ == ptrace_pt_lwpnext) {")
785 …pcmd(" struct __sanitizer_ptrace_lwpstatus *addr = (struct __sanitizer_ptrace_lwpstatus *)addr_…
786 pcmd(" POST_READ(&addr->pl_lwpid, sizeof(__sanitizer_lwpid_t));")
787 pcmd(" POST_WRITE(addr, struct_ptrace_ptrace_lwpstatus_struct_sz);")
788 pcmd(" } else if (req_ == ptrace_pt_setregs) {")
789 pcmd(" POST_READ(addr_, struct_ptrace_reg_struct_sz);")
790 pcmd(" } else if (req_ == ptrace_pt_getregs) {")
791 pcmd(" POST_WRITE(addr_, struct_ptrace_reg_struct_sz);")
792 pcmd(" } else if (req_ == ptrace_pt_setfpregs) {")
793 pcmd(" POST_READ(addr_, struct_ptrace_fpreg_struct_sz);")
794 pcmd(" } else if (req_ == ptrace_pt_getfpregs) {")
795 pcmd(" POST_WRITE(addr_, struct_ptrace_fpreg_struct_sz);")
796 pcmd(" } else if (req_ == ptrace_pt_setdbregs) {")
797 pcmd(" POST_READ(addr_, struct_ptrace_dbreg_struct_sz);")
798 pcmd(" } else if (req_ == ptrace_pt_getdbregs) {")
799 pcmd(" POST_WRITE(addr_, struct_ptrace_dbreg_struct_sz);")
800 pcmd(" }")
801 pcmd("}")
805 pcmd("PRE_WRITE(msg_, sizeof(__sanitizer_msghdr));")
807 pcmd("if (res > 0) {")
808 pcmd(" POST_WRITE(msg_, sizeof(__sanitizer_msghdr));")
809 pcmd("}")
813 pcmd("PRE_READ(msg_, sizeof(__sanitizer_msghdr));")
815 pcmd("if (res > 0) {")
816 pcmd(" POST_READ(msg_, sizeof(__sanitizer_msghdr));")
817 pcmd("}")
821 pcmd("PRE_WRITE(buf_, len_);")
822 pcmd("PRE_WRITE(from_, struct_sockaddr_sz);")
823 pcmd("PRE_WRITE(fromlenaddr_, sizeof(__sanitizer_socklen_t));")
825 pcmd("if (res >= 0) {")
826 pcmd(" POST_WRITE(buf_, res);")
827 pcmd(" POST_WRITE(from_, struct_sockaddr_sz);")
828 pcmd(" POST_WRITE(fromlenaddr_, sizeof(__sanitizer_socklen_t));")
829 pcmd("}")
833 pcmd("PRE_WRITE(name_, struct_sockaddr_sz);")
834 pcmd("PRE_WRITE(anamelen_, sizeof(__sanitizer_socklen_t));")
836 pcmd("if (res == 0) {")
837 pcmd(" POST_WRITE(name_, struct_sockaddr_sz);")
838 pcmd(" POST_WRITE(anamelen_, sizeof(__sanitizer_socklen_t));")
839 pcmd("}")
843 pcmd("PRE_WRITE(asa_, struct_sockaddr_sz);")
844 pcmd("PRE_WRITE(alen_, sizeof(__sanitizer_socklen_t));")
846 pcmd("if (res == 0) {")
847 pcmd(" POST_WRITE(asa_, struct_sockaddr_sz);")
848 pcmd(" POST_WRITE(alen_, sizeof(__sanitizer_socklen_t));")
849 pcmd("}")
853 pcmd("PRE_WRITE(asa_, struct_sockaddr_sz);")
854 pcmd("PRE_WRITE(alen_, sizeof(__sanitizer_socklen_t));")
856 pcmd("if (res == 0) {")
857 pcmd(" POST_WRITE(asa_, struct_sockaddr_sz);")
858 pcmd(" POST_WRITE(alen_, sizeof(__sanitizer_socklen_t));")
859 pcmd("}")
863 pcmd("const char *path = (const char *)path_;")
864 pcmd("if (path) {")
865 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
866 pcmd("}")
868 pcmd("if (res == 0) {")
869 pcmd(" const char *path = (const char *)path_;")
870 pcmd(" if (path) {")
871 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
872 pcmd(" }")
873 pcmd("}")
877 pcmd("const char *path = (const char *)path_;")
878 pcmd("if (path) {")
879 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
880 pcmd("}")
882 pcmd("if (res == 0) {")
883 pcmd(" const char *path = (const char *)path_;")
884 pcmd(" if (path) {")
885 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
886 pcmd(" }")
887 pcmd("}")
890 pcmd("/* Nothing to do */")
892 pcmd("/* Nothing to do */")
894 pcmd("/* Nothing to do */")
896 pcmd("/* TODO */")
898 pcmd("/* Nothing to do */")
900 pcmd("/* TODO */")
902 pcmd("/* Nothing to do */")
904 pcmd("/* pipe returns two descriptors through two returned values */")
906 pcmd("/* Nothing to do */")
909 pcmd("if (samples_) {")
910 pcmd(" PRE_WRITE(samples_, size_);")
911 pcmd("}")
913 pcmd("if (res == 0) {")
914 pcmd(" if (samples_) {")
915 pcmd(" POST_WRITE(samples_, size_);")
916 pcmd(" }")
917 pcmd("}")
921 pcmd("const char *fname = (const char *)fname_;")
922 pcmd("if (fname) {")
923 pcmd(" PRE_READ(fname, __sanitizer::internal_strlen(fname) + 1);")
924 pcmd("}")
926 pcmd("const char *fname = (const char *)fname_;")
927 pcmd("if (res == 0) {")
928 pcmd(" if (fname) {")
929 pcmd(" POST_READ(fname, __sanitizer::internal_strlen(fname) + 1);")
930 pcmd(" }")
931 pcmd("}")
934 pcmd("/* TODO */")
936 pcmd("/* Nothing to do */")
938 pcmd("/* TODO */")
941 pcmd("if (namebuf_) {")
942 pcmd(" PRE_WRITE(namebuf_, namelen_);")
943 pcmd("}")
945 pcmd("if (res == 0) {")
946 pcmd(" if (namebuf_) {")
947 pcmd(" POST_WRITE(namebuf_, namelen_);")
948 pcmd(" }")
949 pcmd("}")
953 pcmd("const char *namebuf = (const char *)namebuf_;")
954 pcmd("if (namebuf) {")
955 pcmd(" PRE_READ(namebuf, __sanitizer::internal_strlen(namebuf) + 1);")
956 pcmd("}")
958 pcmd("if (res == 0) {")
959 pcmd(" const char *namebuf = (const char *)namebuf_;")
960 pcmd(" if (namebuf) {")
961 pcmd(" POST_READ(namebuf, __sanitizer::internal_strlen(namebuf) + 1);")
962 pcmd(" }")
963 pcmd("}")
967 pcmd("const char *path = (const char *)path_;")
968 pcmd("if (path) {")
969 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
970 pcmd("}")
972 pcmd("if (res == 0) {")
973 pcmd(" const char *path = (const char *)path_;")
974 pcmd(" if (path) {")
975 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
976 pcmd(" }")
977 pcmd("}")
980 pcmd("/* TODO */")
982 pcmd("/* TODO */")
984 pcmd("/* Nothing to do */")
986 pcmd("/* TODO */")
989 pcmd("const char *path = (const char *)path_;")
990 pcmd("if (path) {")
991 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
992 pcmd("}")
994 pcmd("if (res == 0) {")
995 pcmd(" const char *path = (const char *)path_;")
996 pcmd(" if (path) {")
997 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
998 pcmd(" }")
999 pcmd("}")
1003 pcmd("const char *path = (const char *)path_;")
1004 pcmd("const char *link = (const char *)link_;")
1005 pcmd("if (path) {")
1006 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1007 pcmd("}")
1008 pcmd("if (link) {")
1009 pcmd(" PRE_READ(link, __sanitizer::internal_strlen(link) + 1);")
1010 pcmd("}")
1012 pcmd("if (res == 0) {")
1013 pcmd(" const char *path = (const char *)path_;")
1014 pcmd(" const char *link = (const char *)link_;")
1015 pcmd(" if (path) {")
1016 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1017 pcmd(" }")
1018 pcmd(" if (link) {")
1019 pcmd(" POST_READ(link, __sanitizer::internal_strlen(link) + 1);")
1020 pcmd(" }")
1021 pcmd("}")
1025 pcmd("const char *path = (const char *)path_;")
1026 pcmd("if (path) {")
1027 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1028 pcmd("}")
1029 pcmd("if (buf_) {")
1030 pcmd(" PRE_WRITE(buf_, count_);")
1031 pcmd("}")
1033 pcmd("if (res > 0) {")
1034 pcmd(" const char *path = (const char *)path_;")
1035 pcmd(" if (path) {")
1036 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1037 pcmd(" }")
1038 pcmd(" if (buf_) {")
1039 pcmd(" PRE_WRITE(buf_, res);")
1040 pcmd(" }")
1041 pcmd("}")
1045 pcmd("const char *path = (const char *)path_;")
1046 pcmd("char **argp = (char **)argp_;")
1047 pcmd("char **envp = (char **)envp_;")
1048 pcmd("if (path) {")
1049 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1050 pcmd("}")
1051 pcmd("if (argp && argp[0]) {")
1052 pcmd(" char *a = argp[0];")
1053 pcmd(" while (a++) {")
1054 pcmd(" PRE_READ(a, __sanitizer::internal_strlen(a) + 1);")
1055 pcmd(" }")
1056 pcmd("}")
1057 pcmd("if (envp && envp[0]) {")
1058 pcmd(" char *e = envp[0];")
1059 pcmd(" while (e++) {")
1060 pcmd(" PRE_READ(e, __sanitizer::internal_strlen(e) + 1);")
1061 pcmd(" }")
1062 pcmd("}")
1064 pcmd("/* If we are here, something went wrong */")
1065 pcmd("const char *path = (const char *)path_;")
1066 pcmd("char **argp = (char **)argp_;")
1067 pcmd("char **envp = (char **)envp_;")
1068 pcmd("if (path) {")
1069 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1070 pcmd("}")
1071 pcmd("if (argp && argp[0]) {")
1072 pcmd(" char *a = argp[0];")
1073 pcmd(" while (a++) {")
1074 pcmd(" POST_READ(a, __sanitizer::internal_strlen(a) + 1);")
1075 pcmd(" }")
1076 pcmd("}")
1077 pcmd("if (envp && envp[0]) {")
1078 pcmd(" char *e = envp[0];")
1079 pcmd(" while (e++) {")
1080 pcmd(" POST_READ(e, __sanitizer::internal_strlen(e) + 1);")
1081 pcmd(" }")
1082 pcmd("}")
1085 pcmd("/* Nothing to do */")
1088 pcmd("const char *path = (const char *)path_;")
1089 pcmd("if (path) {")
1090 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1091 pcmd("}")
1093 pcmd("if (res == 0) {")
1094 pcmd(" const char *path = (const char *)path_;")
1095 pcmd(" if (path) {")
1096 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1097 pcmd(" }")
1098 pcmd("}")
1101 pcmd("/* TODO */")
1103 pcmd("/* TODO */")
1105 pcmd("/* TODO */")
1107 pcmd("/* TODO */")
1109 pcmd("/* Nothing to do */")
1111 pcmd("/* TODO */")
1113 pcmd("/* Nothing to do */")
1115 pcmd("/* Nothing to do */")
1117 pcmd("/* Nothing to do */")
1119 pcmd("/* Nothing to do */")
1121 pcmd("/* Nothing to do */")
1124 pcmd("unsigned int *gidset = (unsigned int *)gidset_;")
1125 pcmd("if (gidset) {")
1126 pcmd(" PRE_WRITE(gidset, sizeof(*gidset) * gidsetsize_);")
1127 pcmd("}")
1129 pcmd("if (res == 0) {")
1130 pcmd(" unsigned int *gidset = (unsigned int *)gidset_;")
1131 pcmd(" if (gidset) {")
1132 pcmd(" POST_WRITE(gidset, sizeof(*gidset) * gidsetsize_);")
1133 pcmd(" }")
1134 pcmd("}")
1138 pcmd("unsigned int *gidset = (unsigned int *)gidset_;")
1139 pcmd("if (gidset) {")
1140 pcmd(" PRE_READ(gidset, sizeof(*gidset) * gidsetsize_);")
1141 pcmd("}")
1143 pcmd("if (res == 0) {")
1144 pcmd(" unsigned int *gidset = (unsigned int *)gidset_;")
1145 pcmd(" if (gidset) {")
1146 pcmd(" POST_READ(gidset, sizeof(*gidset) * gidsetsize_);")
1147 pcmd(" }")
1148 pcmd("}")
1151 pcmd("/* Nothing to do */")
1153 pcmd("/* Nothing to do */")
1155 pcmd("/* TODO */")
1157 pcmd("/* TODO */")
1159 pcmd("/* TODO */")
1161 pcmd("/* TODO */")
1163 pcmd("/* TODO */")
1165 pcmd("/* TODO */")
1167 pcmd("/* TODO */")
1169 pcmd("/* Nothing to do */")
1171 pcmd("/* TODO */")
1173 pcmd("/* Nothing to do */")
1175 pcmd("/* TODO */")
1177 pcmd("/* Nothing to do */")
1179 pcmd("/* Nothing to do */")
1181 pcmd("/* TODO */")
1184 pcmd("PRE_READ(name_, namelen_);")
1186 pcmd("if (res == 0) {")
1187 pcmd(" POST_READ(name_, namelen_);")
1188 pcmd("}")
1191 pcmd("/* TODO */")
1193 pcmd("/* Nothing to do */")
1195 pcmd("/* TODO */")
1197 pcmd("/* TODO */")
1199 pcmd("/* TODO */")
1202 pcmd("PRE_READ(name_, namelen_);")
1204 pcmd("if (res == 0) {")
1205 pcmd(" PRE_READ(name_, namelen_);")
1206 pcmd("}")
1210 pcmd("if (val_) {")
1211 pcmd(" PRE_READ(val_, valsize_);")
1212 pcmd("}")
1214 pcmd("if (res == 0) {")
1215 pcmd(" if (val_) {")
1216 pcmd(" POST_READ(val_, valsize_);")
1217 pcmd(" }")
1218 pcmd("}")
1221 pcmd("/* Nothing to do */")
1223 pcmd("/* TODO */")
1225 pcmd("/* TODO */")
1227 pcmd("/* TODO */")
1229 pcmd("/* TODO */")
1231 pcmd("/* TODO */")
1233 pcmd("/* TODO */")
1235 pcmd("/* TODO */")
1237 pcmd("/* TODO */")
1239 pcmd("/* TODO */")
1241 pcmd("/* TODO */")
1244 pcmd("struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;")
1245 pcmd("int i;")
1246 pcmd("if (iovp) {")
1247 pcmd(" PRE_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);")
1248 pcmd(" for (i = 0; i < iovcnt_; i++) {")
1249 pcmd(" PRE_WRITE(iovp[i].iov_base, iovp[i].iov_len);")
1250 pcmd(" }")
1251 pcmd("}")
1253 pcmd("struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;")
1254 pcmd("int i;")
1255 pcmd("uptr m, n = res;")
1256 pcmd("if (res > 0) {")
1257 pcmd(" if (iovp) {")
1258 pcmd(" POST_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);")
1259 pcmd(" for (i = 0; i < iovcnt_ && n > 0; i++) {")
1260 pcmd(" m = n > iovp[i].iov_len ? iovp[i].iov_len : n;")
1261 pcmd(" POST_WRITE(iovp[i].iov_base, m);")
1262 pcmd(" n -= m;")
1263 pcmd(" }")
1264 pcmd(" }")
1265 pcmd("}")
1269 pcmd("struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;")
1270 pcmd("int i;")
1271 pcmd("if (iovp) {")
1272 pcmd(" PRE_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);")
1273 pcmd(" for (i = 0; i < iovcnt_; i++) {")
1274 pcmd(" PRE_READ(iovp[i].iov_base, iovp[i].iov_len);")
1275 pcmd(" }")
1276 pcmd("}")
1278 pcmd("struct __sanitizer_iovec *iovp = (struct __sanitizer_iovec *)iovp_;")
1279 pcmd("int i;")
1280 pcmd("uptr m, n = res;")
1281 pcmd("if (res > 0) {")
1282 pcmd(" if (iovp) {")
1283 pcmd(" POST_READ(iovp, sizeof(struct __sanitizer_iovec) * iovcnt_);")
1284 pcmd(" for (i = 0; i < iovcnt_ && n > 0; i++) {")
1285 pcmd(" m = n > iovp[i].iov_len ? iovp[i].iov_len : n;")
1286 pcmd(" POST_READ(iovp[i].iov_base, m);")
1287 pcmd(" n -= m;")
1288 pcmd(" }")
1289 pcmd(" }")
1290 pcmd("}")
1293 pcmd("/* TODO */")
1295 pcmd("/* Nothing to do */")
1297 pcmd("/* Nothing to do */")
1299 pcmd("/* TODO */")
1301 pcmd("/* Nothing to do */")
1303 pcmd("/* Nothing to do */")
1306 pcmd("const char *from = (const char *)from_;")
1307 pcmd("const char *to = (const char *)to_;")
1308 pcmd("if (from) {")
1309 pcmd(" PRE_READ(from, __sanitizer::internal_strlen(from) + 1);")
1310 pcmd("}")
1311 pcmd("if (to) {")
1312 pcmd(" PRE_READ(to, __sanitizer::internal_strlen(to) + 1);")
1313 pcmd("}")
1315 pcmd("if (res == 0) {")
1316 pcmd(" const char *from = (const char *)from_;")
1317 pcmd(" const char *to = (const char *)to_;")
1318 pcmd(" if (from) {")
1319 pcmd(" POST_READ(from, __sanitizer::internal_strlen(from) + 1);")
1320 pcmd(" }")
1321 pcmd(" if (to) {")
1322 pcmd(" POST_READ(to, __sanitizer::internal_strlen(to) + 1);")
1323 pcmd(" }")
1324 pcmd("}")
1327 pcmd("/* TODO */")
1329 pcmd("/* TODO */")
1331 pcmd("/* Nothing to do */")
1334 pcmd("const char *path = (const char *)path_;")
1335 pcmd("if (path) {")
1336 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1337 pcmd("}")
1339 pcmd("if (res == 0) {")
1340 pcmd(" const char *path = (const char *)path_;")
1341 pcmd(" if (path) {")
1342 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1343 pcmd(" }")
1344 pcmd("}")
1348 pcmd("PRE_READ(buf_, len_);")
1349 pcmd("PRE_READ(to_, tolen_);")
1351 pcmd("if (res >= 0) {")
1352 pcmd(" POST_READ(buf_, len_);")
1353 pcmd(" POST_READ(to_, tolen_);")
1354 pcmd("}")
1357 pcmd("/* Nothing to do */")
1360 pcmd("PRE_WRITE(rsv_, 2 * sizeof(int));")
1362 pcmd("if (res == 0) {")
1363 pcmd(" POST_WRITE(rsv_, 2 * sizeof(int));")
1364 pcmd("}")
1368 pcmd("const char *path = (const char *)path_;")
1369 pcmd("if (path) {")
1370 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1371 pcmd("}")
1373 pcmd("if (res == 0) {")
1374 pcmd(" const char *path = (const char *)path_;")
1375 pcmd(" if (path) {")
1376 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1377 pcmd(" }")
1378 pcmd("}")
1382 pcmd("const char *path = (const char *)path_;")
1383 pcmd("if (path) {")
1384 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1385 pcmd("}")
1387 pcmd("if (res == 0) {")
1388 pcmd(" const char *path = (const char *)path_;")
1389 pcmd(" if (path) {")
1390 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1391 pcmd(" }")
1392 pcmd("}")
1395 pcmd("/* TODO */")
1397 pcmd("/* TODO */")
1399 pcmd("/* TODO */")
1401 pcmd("/* TODO */")
1403 pcmd("/* TODO */")
1405 pcmd("/* TODO */")
1407 pcmd("/* TODO */")
1409 pcmd("/* TODO */")
1411 pcmd("/* Nothing to do */")
1413 pcmd("/* TODO */")
1415 pcmd("/* TODO */")
1417 pcmd("/* TODO */")
1419 pcmd("/* Nothing to do */")
1421 pcmd("/* TODO */")
1423 pcmd("/* TODO */")
1425 pcmd("/* TODO */")
1427 pcmd("/* TODO */")
1429 pcmd("/* TODO */")
1431 pcmd("/* TODO */")
1433 pcmd("/* TODO */")
1435 pcmd("/* TODO */")
1437 pcmd("/* TODO */")
1439 pcmd("/* TODO */")
1441 pcmd("/* TODO */")
1443 pcmd("/* TODO */")
1445 pcmd("/* TODO */")
1447 pcmd("/* TODO */")
1450 pcmd("if (buf_) {")
1451 pcmd(" PRE_WRITE(buf_, nbyte_);")
1452 pcmd("}")
1454 pcmd("if (res > 0) {")
1455 pcmd(" POST_WRITE(buf_, res);")
1456 pcmd("}")
1460 pcmd("if (buf_) {")
1461 pcmd(" PRE_READ(buf_, nbyte_);")
1462 pcmd("}")
1464 pcmd("if (res > 0) {")
1465 pcmd(" POST_READ(buf_, res);")
1466 pcmd("}")
1469 pcmd("/* TODO */")
1471 pcmd("/* Nothing to do */")
1473 pcmd("/* Nothing to do */")
1475 pcmd("/* Nothing to do */")
1477 pcmd("/* Nothing to do */")
1479 pcmd("/* TODO */")
1481 pcmd("/* TODO */")
1483 pcmd("/* TODO */")
1485 pcmd("/* TODO */")
1487 pcmd("/* TODO */")
1489 pcmd("/* TODO */")
1491 pcmd("/* TODO */")
1494 pcmd("const char *path = (const char *)path_;")
1495 pcmd("if (path) {")
1496 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1497 pcmd("}")
1499 pcmd("if (res != -1) {")
1500 pcmd(" const char *path = (const char *)path_;")
1501 pcmd(" if (path) {")
1502 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1503 pcmd(" }")
1504 pcmd("}")
1507 pcmd("/* TODO */")
1509 pcmd("/* Nothing to do */")
1512 pcmd("PRE_WRITE(rlp_, struct_rlimit_sz);")
1514 pcmd("if (res == 0) {")
1515 pcmd(" POST_WRITE(rlp_, struct_rlimit_sz);")
1516 pcmd("}")
1520 pcmd("PRE_READ(rlp_, struct_rlimit_sz);")
1522 pcmd("if (res == 0) {")
1523 pcmd(" POST_READ(rlp_, struct_rlimit_sz);")
1524 pcmd("}")
1527 pcmd("/* TODO */")
1529 pcmd("/* Nothing to do */")
1531 pcmd("/* Nothing to do */")
1533 pcmd("/* Nothing to do */")
1536 pcmd("const char *path = (const char *)path_;")
1537 pcmd("if (path) {")
1538 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1539 pcmd("}")
1541 pcmd("if (res == 0) {")
1542 pcmd(" const char *path = (const char *)path_;")
1543 pcmd(" if (path) {")
1544 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1545 pcmd(" }")
1546 pcmd("}")
1549 pcmd("/* Nothing to do */")
1552 pcmd("const int *name = (const int *)name_;")
1553 pcmd("if (name) {")
1554 pcmd(" PRE_READ(name, namelen_ * sizeof(*name));")
1555 pcmd("}")
1556 pcmd("if (newv_) {")
1557 pcmd(" PRE_READ(name, newlen_);")
1558 pcmd("}")
1560 pcmd("if (res == 0) {")
1561 pcmd(" const int *name = (const int *)name_;")
1562 pcmd(" if (name) {")
1563 pcmd(" POST_READ(name, namelen_ * sizeof(*name));")
1564 pcmd(" }")
1565 pcmd(" if (newv_) {")
1566 pcmd(" POST_READ(name, newlen_);")
1567 pcmd(" }")
1568 pcmd("}")
1571 pcmd("/* Nothing to do */")
1573 pcmd("/* Nothing to do */")
1576 pcmd("const char *path = (const char *)path_;")
1577 pcmd("if (path) {")
1578 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1579 pcmd("}")
1581 pcmd("if (res == 0) {")
1582 pcmd(" const char *path = (const char *)path_;")
1583 pcmd(" if (path) {")
1584 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1585 pcmd(" }")
1586 pcmd("}")
1589 pcmd("/* TODO */")
1591 pcmd("/* Nothing to do */")
1594 pcmd("const char *bootstr = (const char *)bootstr_;")
1595 pcmd("if (bootstr) {")
1596 pcmd(" PRE_READ(bootstr, __sanitizer::internal_strlen(bootstr) + 1);")
1597 pcmd("}")
1599 pcmd("/* This call should never return */")
1600 pcmd("const char *bootstr = (const char *)bootstr_;")
1601 pcmd("if (bootstr) {")
1602 pcmd(" POST_READ(bootstr, __sanitizer::internal_strlen(bootstr) + 1);")
1603 pcmd("}")
1606 pcmd("/* Nothing to do */")
1608 pcmd("/* TODO */")
1610 pcmd("/* TODO */")
1612 pcmd("/* Nothing to do */")
1615 pcmd("if (sops_) {")
1616 pcmd(" PRE_READ(sops_, nsops_ * struct_sembuf_sz);")
1617 pcmd("}")
1619 pcmd("if (res == 0) {")
1620 pcmd(" if (sops_) {")
1621 pcmd(" POST_READ(sops_, nsops_ * struct_sembuf_sz);")
1622 pcmd(" }")
1623 pcmd("}")
1626 pcmd("/* Nothing to do */")
1628 pcmd("/* TODO */")
1630 pcmd("/* Nothing to do */")
1633 pcmd("if (msgp_) {")
1634 pcmd(" PRE_READ(msgp_, msgsz_);")
1635 pcmd("}")
1637 pcmd("if (res == 0) {")
1638 pcmd(" if (msgp_) {")
1639 pcmd(" POST_READ(msgp_, msgsz_);")
1640 pcmd(" }")
1641 pcmd("}")
1644 pcmd("/* Nothing to do */")
1646 pcmd("/* Nothing to do */")
1648 pcmd("/* TODO */")
1650 pcmd("/* Nothing to do */")
1652 pcmd("/* Nothing to do */")
1654 pcmd("/* TODO */")
1656 pcmd("/* TODO */")
1658 pcmd("/* TODO */")
1660 pcmd("/* Nothing to do */")
1662 pcmd("/* Nothing to do */")
1664 pcmd("/* TODO */")
1666 pcmd("/* TODO */")
1668 pcmd("/* Nothing to do */")
1670 pcmd("/* TODO */")
1672 pcmd("/* Nothing to do */")
1674 pcmd("/* Nothing to do */")
1676 pcmd("/* Nothing to do */")
1678 pcmd("/* TODO */")
1681 pcmd("if (info_) {")
1682 pcmd(" PRE_READ(info_, siginfo_t_sz);")
1683 pcmd("}")
1686 pcmd("/* TODO */")
1688 pcmd("/* Nothing to do */")
1691 pcmd("const char *name = (const char *)name_;")
1692 pcmd("if (name) {")
1693 pcmd(" PRE_READ(name, __sanitizer::internal_strlen(name) + 1);")
1694 pcmd("}")
1696 pcmd("const char *name = (const char *)name_;")
1697 pcmd("if (name) {")
1698 pcmd(" POST_READ(name, __sanitizer::internal_strlen(name) + 1);")
1699 pcmd("}")
1703 pcmd("const char *name = (const char *)name_;")
1704 pcmd("if (name) {")
1705 pcmd(" PRE_READ(name, __sanitizer::internal_strlen(name) + 1);")
1706 pcmd("}")
1708 pcmd("const char *name = (const char *)name_;")
1709 pcmd("if (name) {")
1710 pcmd(" POST_READ(name, __sanitizer::internal_strlen(name) + 1);")
1711 pcmd("}")
1714 pcmd("/* Nothing to do */")
1716 pcmd("/* Nothing to do */")
1718 pcmd("/* Nothing to do */")
1720 pcmd("/* Nothing to do */")
1722 pcmd("/* Nothing to do */")
1724 pcmd("/* Nothing to do */")
1727 pcmd("if (abstime_) {")
1728 pcmd(" PRE_READ(abstime_, struct_timespec_sz);")
1729 pcmd("}")
1733 pcmd("const char *name = (const char *)name_;")
1734 pcmd("if (name) {")
1735 pcmd(" PRE_READ(name, __sanitizer::internal_strlen(name) + 1);")
1736 pcmd("}")
1738 pcmd("const char *name = (const char *)name_;")
1739 pcmd("if (name) {")
1740 pcmd(" POST_READ(name, __sanitizer::internal_strlen(name) + 1);")
1741 pcmd("}")
1744 pcmd("/* Nothing to do */")
1747 pcmd("const char *name = (const char *)name_;")
1748 pcmd("if (name) {")
1749 pcmd(" PRE_READ(name, __sanitizer::internal_strlen(name) + 1);")
1750 pcmd("}")
1752 pcmd("const char *name = (const char *)name_;")
1753 pcmd("if (name) {")
1754 pcmd(" POST_READ(name, __sanitizer::internal_strlen(name) + 1);")
1755 pcmd("}")
1758 pcmd("/* Nothing to do */")
1761 pcmd("if (mqstat_) {")
1762 pcmd(" PRE_READ(mqstat_, struct_mq_attr_sz);")
1763 pcmd("}")
1767 pcmd("if (notification_) {")
1768 pcmd(" PRE_READ(notification_, struct_sigevent_sz);")
1769 pcmd("}")
1773 pcmd("if (msg_ptr_) {")
1774 pcmd(" PRE_READ(msg_ptr_, msg_len_);")
1775 pcmd("}")
1778 pcmd("/* Nothing to do */")
1780 pcmd("/* TODO */")
1782 pcmd("/* TODO */")
1785 pcmd("const char *from = (const char *)from_;")
1786 pcmd("const char *to = (const char *)to_;")
1787 pcmd("if (from_) {")
1788 pcmd(" PRE_READ(from, __sanitizer::internal_strlen(from) + 1);")
1789 pcmd("}")
1790 pcmd("if (to) {")
1791 pcmd(" PRE_READ(to, __sanitizer::internal_strlen(to) + 1);")
1792 pcmd("}")
1794 pcmd("const char *from = (const char *)from_;")
1795 pcmd("const char *to = (const char *)to_;")
1796 pcmd("if (from) {")
1797 pcmd(" POST_READ(from, __sanitizer::internal_strlen(from) + 1);")
1798 pcmd("}")
1799 pcmd("if (to) {")
1800 pcmd(" POST_READ(to, __sanitizer::internal_strlen(to) + 1);")
1801 pcmd("}")
1804 pcmd("/* TODO */")
1806 pcmd("/* TODO */")
1808 pcmd("/* Nothing to do */")
1811 pcmd("const char *path = (const char *)path_;")
1812 pcmd("if (path) {")
1813 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1814 pcmd("}")
1816 pcmd("const char *path = (const char *)path_;")
1817 pcmd("if (path) {")
1818 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1819 pcmd("}")
1823 pcmd("const char *path = (const char *)path_;")
1824 pcmd("if (path) {")
1825 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1826 pcmd("}")
1828 pcmd("const char *path = (const char *)path_;")
1829 pcmd("if (path) {")
1830 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1831 pcmd("}")
1834 pcmd("/* TODO */")
1836 pcmd("/* Nothing to do */")
1838 pcmd("/* TODO */")
1840 pcmd("/* TODO */")
1842 pcmd("/* TODO */")
1845 pcmd("if (nss_) {")
1846 pcmd(" PRE_READ(nss_, struct_sigaltstack_sz);")
1847 pcmd("}")
1848 pcmd("if (oss_) {")
1849 pcmd(" PRE_READ(oss_, struct_sigaltstack_sz);")
1850 pcmd("}")
1853 pcmd("/* Nothing to do */")
1856 pcmd("const char *path = (const char *)path_;")
1857 pcmd("if (path) {")
1858 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1859 pcmd("}")
1861 pcmd("const char *path = (const char *)path_;")
1862 pcmd("if (path) {")
1863 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1864 pcmd("}")
1867 pcmd("/* Nothing to do */")
1870 pcmd("const char *path = (const char *)path_;")
1871 pcmd("if (path) {")
1872 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1873 pcmd("}")
1875 pcmd("const char *path = (const char *)path_;")
1876 pcmd("if (path) {")
1877 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1878 pcmd("}")
1881 pcmd("/* Nothing to do */")
1883 pcmd("/* Nothing to do */")
1885 pcmd("/* Nothing to do */")
1887 pcmd("/* Nothing to do */")
1889 pcmd("/* Nothing to do */")
1891 pcmd("/* TODO */")
1893 pcmd("/* Nothing to do */")
1895 pcmd("/* Nothing to do */")
1897 pcmd("if (set_) {")
1898 pcmd(" PRE_READ(set_, sizeof(__sanitizer_sigset_t));")
1899 pcmd("}")
1901 pcmd("/* TODO */")
1903 pcmd("/* Nothing to do */")
1905 pcmd("/* Nothing to do */")
1907 pcmd("/* TODO */")
1909 pcmd("/* TODO */")
1911 pcmd("/* TODO */")
1913 pcmd("/* TODO */")
1915 pcmd("/* TODO */")
1917 pcmd("/* TODO */")
1920 pcmd("const char *path = (const char *)path_;")
1921 pcmd("if (path) {")
1922 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
1923 pcmd("}")
1925 pcmd("const char *path = (const char *)path_;")
1926 pcmd("if (path) {")
1927 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
1928 pcmd("}")
1931 pcmd("/* Nothing to do */")
1934 pcmd("const char *label = (const char *)label_;")
1935 pcmd("if (label) {")
1936 pcmd(" PRE_READ(label, __sanitizer::internal_strlen(label) + 1);")
1937 pcmd("}")
1938 pcmd("if (addr_) {")
1939 pcmd(" PRE_READ(addr_, len_);")
1940 pcmd("}")
1942 pcmd("const char *label = (const char *)label_;")
1943 pcmd("if (label) {")
1944 pcmd(" POST_READ(label, __sanitizer::internal_strlen(label) + 1);")
1945 pcmd("}")
1946 pcmd("if (addr_) {")
1947 pcmd(" POST_READ(addr_, len_);")
1948 pcmd("}")
1951 pcmd("/* Nothing to do */")
1954 pcmd("if (ucp_) {")
1955 pcmd(" PRE_READ(ucp_, ucontext_t_sz);")
1956 pcmd("}")
1960 pcmd("if (ucp_) {")
1961 pcmd(" PRE_READ(ucp_, ucontext_t_sz);")
1962 pcmd("}")
1965 pcmd("/* Nothing to do */")
1967 pcmd("/* Nothing to do */")
1969 pcmd("/* Nothing to do */")
1971 pcmd("/* Nothing to do */")
1973 pcmd("/* Nothing to do */")
1975 pcmd("/* Nothing to do */")
1977 pcmd("/* Nothing to do */")
1979 pcmd("/* Nothing to do */")
1981 pcmd("/* Nothing to do */")
1983 pcmd("/* Nothing to do */")
1985 pcmd("/* TODO */")
1987 pcmd("/* Nothing to do */")
1990 pcmd("if (targets_) {")
1991 pcmd(" PRE_READ(targets_, ntargets_ * sizeof(__sanitizer_lwpid_t));")
1992 pcmd("}")
1996 pcmd("const char *name = (const char *)name_;")
1997 pcmd("if (name) {")
1998 pcmd(" PRE_READ(name, __sanitizer::internal_strlen(name) + 1);")
1999 pcmd("}")
2001 pcmd("const char *name = (const char *)name_;")
2002 pcmd("if (name) {")
2003 pcmd(" POST_READ(name, __sanitizer::internal_strlen(name) + 1);")
2004 pcmd("}")
2007 pcmd("/* Nothing to do */")
2009 pcmd("/* Nothing to do */")
2011 pcmd("/* TODO */")
2013 pcmd("/* TODO */")
2015 pcmd("/* TODO */")
2017 pcmd("/* TODO */")
2019 pcmd("/* TODO */")
2021 pcmd("/* TODO */")
2023 pcmd("if (nsa_) {")
2024 pcmd(" PRE_READ(nsa_, sizeof(__sanitizer_sigaction));")
2025 pcmd("}")
2027 pcmd("/* Nothing to do */")
2029 pcmd("/* Nothing to do */")
2031 pcmd("/* TODO */")
2033 pcmd("if (params_) {")
2034 pcmd(" PRE_READ(params_, struct_sched_param_sz);")
2035 pcmd("}")
2037 pcmd("/* Nothing to do */")
2039 pcmd("if (cpuset_) {")
2040 pcmd(" PRE_READ(cpuset_, size_);")
2041 pcmd("}")
2043 pcmd("/* Nothing to do */")
2045 pcmd("/* Nothing to do */")
2047 pcmd("/* Nothing to do */")
2049 pcmd("/* Nothing to do */")
2051 pcmd("/* Nothing to do */")
2053 pcmd("/* Nothing to do */")
2056 pcmd("const char *path = (const char *)path_;")
2057 pcmd("if (path) {")
2058 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2059 pcmd("}")
2061 pcmd("const char *path = (const char *)path_;")
2062 pcmd("if (path) {")
2063 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2064 pcmd("}")
2067 pcmd("/* Nothing to do */")
2069 pcmd("/* TODO */")
2072 pcmd("const char *path = (const char *)path_;")
2073 pcmd("if (path) {")
2074 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2075 pcmd("}")
2077 pcmd("const char *path = (const char *)path_;")
2078 pcmd("if (path) {")
2079 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2080 pcmd("}")
2084 pcmd("const char *path = (const char *)path_;")
2085 pcmd("if (path) {")
2086 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2087 pcmd("}")
2089 pcmd("const char *path = (const char *)path_;")
2090 pcmd("if (path) {")
2091 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2092 pcmd("}")
2096 pcmd("const char *path = (const char *)path_;")
2097 pcmd("if (path) {")
2098 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2099 pcmd("}")
2101 pcmd("const char *path = (const char *)path_;")
2102 pcmd("if (path) {")
2103 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2104 pcmd("}")
2108 pcmd("const char *path = (const char *)path_;")
2109 pcmd("if (path) {")
2110 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2111 pcmd("}")
2113 pcmd("const char *path = (const char *)path_;")
2114 pcmd("if (path) {")
2115 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2116 pcmd("}")
2119 pcmd("/* TODO */")
2121 pcmd("/* TODO */")
2123 pcmd("/* TODO */")
2126 pcmd("const char *path = (const char *)path_;")
2127 pcmd("if (path) {")
2128 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2129 pcmd("}")
2131 pcmd("const char *path = (const char *)path_;")
2132 pcmd("if (path) {")
2133 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2134 pcmd("}")
2138 pcmd("const char *path = (const char *)path_;")
2139 pcmd("if (path) {")
2140 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2141 pcmd("}")
2143 pcmd("const char *path = (const char *)path_;")
2144 pcmd("if (path) {")
2145 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2146 pcmd("}")
2150 pcmd("const char *path = (const char *)path_;")
2151 pcmd("if (path) {")
2152 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2153 pcmd("}")
2155 pcmd("const char *path = (const char *)path_;")
2156 pcmd("if (path) {")
2157 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2158 pcmd("}")
2161 pcmd("/* TODO */")
2164 pcmd("const char *path = (const char *)path_;")
2165 pcmd("if (path) {")
2166 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2167 pcmd("}")
2169 pcmd("const char *path = (const char *)path_;")
2170 pcmd("if (path) {")
2171 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2172 pcmd("}")
2176 pcmd("const char *path = (const char *)path_;")
2177 pcmd("if (path) {")
2178 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2179 pcmd("}")
2181 pcmd("const char *path = (const char *)path_;")
2182 pcmd("if (path) {")
2183 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2184 pcmd("}")
2187 pcmd("/* TODO */")
2189 pcmd("/* TODO */")
2192 pcmd("const char *path = (const char *)path_;")
2193 pcmd("if (path) {")
2194 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2195 pcmd("}")
2197 pcmd("const char *path = (const char *)path_;")
2198 pcmd("if (path) {")
2199 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2200 pcmd("}")
2204 pcmd("const char *path = (const char *)path_;")
2205 pcmd("if (path) {")
2206 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2207 pcmd("}")
2209 pcmd("const char *path = (const char *)path_;")
2210 pcmd("if (path) {")
2211 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2212 pcmd("}")
2215 pcmd("/* Nothing to do */")
2218 pcmd("const char *path = (const char *)path_;")
2219 pcmd("if (path) {")
2220 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2221 pcmd("}")
2223 pcmd("const char *path = (const char *)path_;")
2224 pcmd("if (path) {")
2225 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2226 pcmd("}")
2230 pcmd("const char *path = (const char *)path_;")
2231 pcmd("if (path) {")
2232 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2233 pcmd("}")
2235 pcmd("const char *path = (const char *)path_;")
2236 pcmd("if (path) {")
2237 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2238 pcmd("}")
2241 pcmd("/* Nothing to do */")
2244 pcmd("const char *path = (const char *)path_;")
2245 pcmd("if (path) {")
2246 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2247 pcmd("}")
2249 pcmd("const char *path = (const char *)path_;")
2250 pcmd("if (path) {")
2251 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2252 pcmd("}")
2256 pcmd("const char *path = (const char *)path_;")
2257 pcmd("if (path) {")
2258 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2259 pcmd("}")
2261 pcmd("const char *path = (const char *)path_;")
2262 pcmd("if (path) {")
2263 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2264 pcmd("}")
2267 pcmd("/* TODO */")
2270 pcmd("const char *path = (const char *)path_;")
2271 pcmd("if (path) {")
2272 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2273 pcmd("}")
2275 pcmd("const char *path = (const char *)path_;")
2276 pcmd("if (path) {")
2277 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2278 pcmd("}")
2282 pcmd("const char *path = (const char *)path_;")
2283 pcmd("if (path) {")
2284 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2285 pcmd("}")
2287 pcmd("const char *path = (const char *)path_;")
2288 pcmd("if (path) {")
2289 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2290 pcmd("}")
2293 pcmd("/* TODO */")
2295 pcmd("/* TODO */")
2297 pcmd("/* TODO */")
2299 pcmd("/* TODO */")
2301 pcmd("/* Nothing to do */")
2303 pcmd("/* Nothing to do */")
2305 pcmd("/* TODO */")
2307 pcmd("/* TODO */")
2309 pcmd("/* Nothing to do */")
2312 pcmd("const char *fname = (const char *)fname_;")
2313 pcmd("if (fname) {")
2314 pcmd(" PRE_READ(fname, __sanitizer::internal_strlen(fname) + 1);")
2315 pcmd("}")
2317 pcmd("const char *fname = (const char *)fname_;")
2318 pcmd("if (res == 0) {")
2319 pcmd(" if (fname) {")
2320 pcmd(" POST_READ(fname, __sanitizer::internal_strlen(fname) + 1);")
2321 pcmd(" }")
2322 pcmd("}")
2326 pcmd("if (fhp_) {")
2327 pcmd(" PRE_READ(fhp_, fh_size_);")
2328 pcmd("}")
2332 pcmd("if (fhp_) {")
2333 pcmd(" PRE_READ(fhp_, fh_size_);")
2334 pcmd("}")
2338 pcmd("if (fhp_) {")
2339 pcmd(" PRE_READ(fhp_, fh_size_);")
2340 pcmd("}")
2344 pcmd("if (aiocbp_) {")
2345 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2346 pcmd("}")
2350 pcmd("if (aiocbp_) {")
2351 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2352 pcmd("}")
2356 pcmd("if (aiocbp_) {")
2357 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2358 pcmd("}")
2362 pcmd("if (aiocbp_) {")
2363 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2364 pcmd("}")
2368 pcmd("if (aiocbp_) {")
2369 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2370 pcmd("}")
2373 pcmd("/* TODO */")
2376 pcmd("if (aiocbp_) {")
2377 pcmd(" PRE_READ(aiocbp_, sizeof(struct __sanitizer_aiocb));")
2378 pcmd("}")
2381 pcmd("/* Nothing to do */")
2384 pcmd("const char *type = (const char *)type_;")
2385 pcmd("const char *path = (const char *)path_;")
2386 pcmd("if (type) {")
2387 pcmd(" PRE_READ(type, __sanitizer::internal_strlen(type) + 1);")
2388 pcmd("}")
2389 pcmd("if (path) {")
2390 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2391 pcmd("}")
2392 pcmd("if (data_) {")
2393 pcmd(" PRE_READ(data_, data_len_);")
2394 pcmd("}")
2396 pcmd("const char *type = (const char *)type_;")
2397 pcmd("const char *path = (const char *)path_;")
2398 pcmd("if (type) {")
2399 pcmd(" POST_READ(type, __sanitizer::internal_strlen(type) + 1);")
2400 pcmd("}")
2401 pcmd("if (path) {")
2402 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2403 pcmd("}")
2404 pcmd("if (data_) {")
2405 pcmd(" POST_READ(data_, data_len_);")
2406 pcmd("}")
2409 pcmd("/* Nothing to do */")
2411 pcmd("/* Nothing to do */")
2413 pcmd("/* Nothing to do */")
2415 pcmd("/* Nothing to do */")
2417 pcmd("/* Nothing to do */")
2419 pcmd("/* Nothing to do */")
2421 pcmd("/* Nothing to do */")
2423 pcmd("/* Nothing to do */")
2426 pcmd("if (tv_) {")
2427 pcmd(" PRE_READ(tv_, timeval_sz);")
2428 pcmd("}")
2429 pcmd("if (tzp_) {")
2430 pcmd(" PRE_READ(tzp_, struct_timezone_sz);")
2431 pcmd("}")
2435 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2436 pcmd("const char *path = (const char *)path_;")
2437 pcmd("if (path) {")
2438 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2439 pcmd("}")
2440 pcmd("if (tptr) {")
2441 pcmd(" PRE_READ(tptr[0], struct_timespec_sz);")
2442 pcmd(" PRE_READ(tptr[1], struct_timespec_sz);")
2443 pcmd("}")
2447 pcmd("if (delta_) {")
2448 pcmd(" PRE_READ(delta_, timeval_sz);")
2449 pcmd("}")
2452 pcmd("/* TODO */")
2455 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2456 pcmd("if (tptr) {")
2457 pcmd(" PRE_READ(tptr[0], struct_timespec_sz);")
2458 pcmd(" PRE_READ(tptr[1], struct_timespec_sz);")
2459 pcmd("}")
2463 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2464 pcmd("const char *path = (const char *)path_;")
2465 pcmd("if (path) {")
2466 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2467 pcmd("}")
2468 pcmd("if (tptr) {")
2469 pcmd(" PRE_READ(tptr[0], struct_timespec_sz);")
2470 pcmd(" PRE_READ(tptr[1], struct_timespec_sz);")
2471 pcmd("}")
2473 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2474 pcmd("const char *path = (const char *)path_;")
2475 pcmd("if (path) {")
2476 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2477 pcmd("}")
2478 pcmd("if (tptr) {")
2479 pcmd(" POST_READ(tptr[0], struct_timespec_sz);")
2480 pcmd(" POST_READ(tptr[1], struct_timespec_sz);")
2481 pcmd("}")
2485 pcmd("struct __sanitizer_itimerval *itv = (struct __sanitizer_itimerval *)itv_;")
2486 pcmd("if (itv) {")
2487 pcmd(" PRE_READ(&itv->it_interval.tv_sec, sizeof(__sanitizer_time_t));")
2488 pcmd(" PRE_READ(&itv->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));")
2489 pcmd(" PRE_READ(&itv->it_value.tv_sec, sizeof(__sanitizer_time_t));")
2490 pcmd(" PRE_READ(&itv->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));")
2491 pcmd("}")
2494 pcmd("/* Nothing to do */")
2496 pcmd("/* Nothing to do */")
2499 pcmd("if (tp_) {")
2500 pcmd(" PRE_READ(tp_, struct_timespec_sz);")
2501 pcmd("}")
2504 pcmd("/* Nothing to do */")
2507 pcmd("if (rqtp_) {")
2508 pcmd(" PRE_READ(rqtp_, struct_timespec_sz);")
2509 pcmd("}")
2513 pcmd("if (set_) {")
2514 pcmd(" PRE_READ(set_, sizeof(__sanitizer_sigset_t));")
2515 pcmd("}")
2516 pcmd("if (timeout_) {")
2517 pcmd(" PRE_READ(timeout_, struct_timespec_sz);")
2518 pcmd("}")
2522 pcmd("if (msg_ptr_) {")
2523 pcmd(" PRE_READ(msg_ptr_, msg_len_);")
2524 pcmd("}")
2525 pcmd("if (abs_timeout_) {")
2526 pcmd(" PRE_READ(abs_timeout_, struct_timespec_sz);")
2527 pcmd("}")
2531 pcmd("if (msg_ptr_) {")
2532 pcmd(" PRE_READ(msg_ptr_, msg_len_);")
2533 pcmd("}")
2534 pcmd("if (abs_timeout_) {")
2535 pcmd(" PRE_READ(abs_timeout_, struct_timespec_sz);")
2536 pcmd("}")
2539 pcmd("/* TODO */")
2542 pcmd("if (changelist_) {")
2543 pcmd(" PRE_READ(changelist_, nchanges_ * struct_kevent_sz);")
2544 pcmd("}")
2545 pcmd("if (timeout_) {")
2546 pcmd(" PRE_READ(timeout_, struct_timespec_sz);")
2547 pcmd("}")
2551 pcmd("if (ts_) {")
2552 pcmd(" PRE_READ(ts_, struct_timespec_sz);")
2553 pcmd("}")
2554 pcmd("if (mask_) {")
2555 pcmd(" PRE_READ(mask_, sizeof(struct __sanitizer_sigset_t));")
2556 pcmd("}")
2560 pcmd("if (ts_) {")
2561 pcmd(" PRE_READ(ts_, struct_timespec_sz);")
2562 pcmd("}")
2563 pcmd("if (mask_) {")
2564 pcmd(" PRE_READ(mask_, sizeof(struct __sanitizer_sigset_t));")
2565 pcmd("}")
2569 pcmd("int i;")
2570 pcmd("const struct aiocb * const *list = (const struct aiocb * const *)list_;")
2571 pcmd("if (list) {")
2572 pcmd(" for (i = 0; i < nent_; i++) {")
2573 pcmd(" if (list[i]) {")
2574 pcmd(" PRE_READ(list[i], sizeof(struct __sanitizer_aiocb));")
2575 pcmd(" }")
2576 pcmd(" }")
2577 pcmd("}")
2578 pcmd("if (timeout_) {")
2579 pcmd(" PRE_READ(timeout_, struct_timespec_sz);")
2580 pcmd("}")
2584 pcmd("const char *path = (const char *)path_;")
2585 pcmd("if (path) {")
2586 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2587 pcmd("}")
2589 pcmd("const char *path = (const char *)path_;")
2590 pcmd("if (res == 0) {")
2591 pcmd(" if (path) {")
2592 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2593 pcmd(" }")
2594 pcmd("}")
2597 pcmd("/* Nothing to do */")
2600 pcmd("const char *path = (const char *)path_;")
2601 pcmd("if (path) {")
2602 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2603 pcmd("}")
2605 pcmd("const char *path = (const char *)path_;")
2606 pcmd("if (res == 0) {")
2607 pcmd(" if (path) {")
2608 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2609 pcmd(" }")
2610 pcmd("}")
2613 pcmd("/* Nothing to do */")
2615 pcmd("/* Nothing to do */")
2617 pcmd("/* Nothing to do */")
2619 pcmd("/* Nothing to do */")
2622 pcmd("struct __sanitizer_itimerval *value = (struct __sanitizer_itimerval *)value_;")
2623 pcmd("if (value) {")
2624 pcmd(" PRE_READ(&value->it_interval.tv_sec, sizeof(__sanitizer_time_t));")
2625 pcmd(" PRE_READ(&value->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));")
2626 pcmd(" PRE_READ(&value->it_value.tv_sec, sizeof(__sanitizer_time_t));")
2627 pcmd(" PRE_READ(&value->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));")
2628 pcmd("}")
2630 pcmd("struct __sanitizer_itimerval *value = (struct __sanitizer_itimerval *)value_;")
2631 pcmd("if (res == 0) {")
2632 pcmd(" if (value) {")
2633 pcmd(" POST_READ(&value->it_interval.tv_sec, sizeof(__sanitizer_time_t));")
2634 pcmd(" POST_READ(&value->it_interval.tv_usec, sizeof(__sanitizer_suseconds_t));")
2635 pcmd(" POST_READ(&value->it_value.tv_sec, sizeof(__sanitizer_time_t));")
2636 pcmd(" POST_READ(&value->it_value.tv_usec, sizeof(__sanitizer_suseconds_t));")
2637 pcmd(" }")
2638 pcmd("}")
2641 pcmd("/* Nothing to do */")
2643 pcmd("/* Nothing to do */")
2645 pcmd("/* Nothing to do */")
2648 pcmd("const char *path = (const char *)path_;")
2649 pcmd("if (path) {")
2650 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2651 pcmd("}")
2653 pcmd("const char *path = (const char *)path_;")
2654 pcmd("if (res == 0) {")
2655 pcmd(" if (path) {")
2656 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2657 pcmd(" }")
2658 pcmd("}")
2662 pcmd("if (fhp_) {")
2663 pcmd(" PRE_READ(fhp_, fh_size_);")
2664 pcmd("}")
2666 pcmd("if (res == 0) {")
2667 pcmd(" if (fhp_) {")
2668 pcmd(" POST_READ(fhp_, fh_size_);")
2669 pcmd(" }")
2670 pcmd("}")
2673 pcmd("/* Nothing to do */")
2675 pcmd("/* Nothing to do */")
2677 pcmd("/* Nothing to do */")
2680 pcmd("if (mask_) {")
2681 pcmd(" PRE_READ(mask_, sizeof(__sanitizer_sigset_t));")
2682 pcmd("}")
2684 pcmd("if (res >= 0) {")
2685 pcmd(" if (mask_) {")
2686 pcmd(" PRE_READ(mask_, sizeof(__sanitizer_sigset_t));")
2687 pcmd(" }")
2688 pcmd("}")
2692 pcmd("const char *name1 = (const char *)name1_;")
2693 pcmd("const char *name2 = (const char *)name2_;")
2694 pcmd("if (name1) {")
2695 pcmd(" PRE_READ(name1, __sanitizer::internal_strlen(name1) + 1);")
2696 pcmd("}")
2697 pcmd("if (name2) {")
2698 pcmd(" PRE_READ(name2, __sanitizer::internal_strlen(name2) + 1);")
2699 pcmd("}")
2701 pcmd("const char *name1 = (const char *)name1_;")
2702 pcmd("const char *name2 = (const char *)name2_;")
2703 pcmd("if (res == 0) {")
2704 pcmd(" if (name1) {")
2705 pcmd(" POST_READ(name1, __sanitizer::internal_strlen(name1) + 1);")
2706 pcmd(" }")
2707 pcmd(" if (name2) {")
2708 pcmd(" POST_READ(name2, __sanitizer::internal_strlen(name2) + 1);")
2709 pcmd(" }")
2710 pcmd("}")
2714 pcmd("const char *from = (const char *)from_;")
2715 pcmd("const char *to = (const char *)to_;")
2716 pcmd("if (from) {")
2717 pcmd(" PRE_READ(from, __sanitizer::internal_strlen(from) + 1);")
2718 pcmd("}")
2719 pcmd("if (to) {")
2720 pcmd(" PRE_READ(to, __sanitizer::internal_strlen(to) + 1);")
2721 pcmd("}")
2723 pcmd("const char *from = (const char *)from_;")
2724 pcmd("const char *to = (const char *)to_;")
2725 pcmd("if (res == 0) {")
2726 pcmd(" if (from) {")
2727 pcmd(" POST_READ(from, __sanitizer::internal_strlen(from) + 1);")
2728 pcmd(" }")
2729 pcmd(" if (to) {")
2730 pcmd(" POST_READ(to, __sanitizer::internal_strlen(to) + 1);")
2731 pcmd(" }")
2732 pcmd("}")
2736 pcmd("const char *path = (const char *)path_;")
2737 pcmd("if (path) {")
2738 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2739 pcmd("}")
2741 pcmd("const char *path = (const char *)path_;")
2742 pcmd("if (res == 0) {")
2743 pcmd(" if (path) {")
2744 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2745 pcmd(" }")
2746 pcmd("}")
2750 pcmd("const char *path = (const char *)path_;")
2751 pcmd("if (path) {")
2752 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2753 pcmd("}")
2755 pcmd("const char *path = (const char *)path_;")
2756 pcmd("if (res == 0) {")
2757 pcmd(" if (path) {")
2758 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2759 pcmd(" }")
2760 pcmd("}")
2764 pcmd("const char *path = (const char *)path_;")
2765 pcmd("if (path) {")
2766 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2767 pcmd("}")
2769 pcmd("const char *path = (const char *)path_;")
2770 pcmd("if (res == 0) {")
2771 pcmd(" if (path) {")
2772 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2773 pcmd(" }")
2774 pcmd("}")
2778 pcmd("const char *path = (const char *)path_;")
2779 pcmd("if (path) {")
2780 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2781 pcmd("}")
2783 pcmd("const char *path = (const char *)path_;")
2784 pcmd("if (res == 0) {")
2785 pcmd(" if (path) {")
2786 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2787 pcmd(" }")
2788 pcmd("}")
2792 pcmd("const char *path = (const char *)path_;")
2793 pcmd("if (path) {")
2794 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2795 pcmd("}")
2797 pcmd("const char *path = (const char *)path_;")
2798 pcmd("if (res == 0) {")
2799 pcmd(" if (path) {")
2800 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2801 pcmd(" }")
2802 pcmd("}")
2806 pcmd("const char *path = (const char *)path_;")
2807 pcmd("if (path) {")
2808 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2809 pcmd("}")
2811 pcmd("const char *path = (const char *)path_;")
2812 pcmd("if (res == 0) {")
2813 pcmd(" if (path) {")
2814 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2815 pcmd(" }")
2816 pcmd("}")
2819 pcmd("/* TODO */")
2822 pcmd("const char *path = (const char *)path_;")
2823 pcmd("if (path) {")
2824 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2825 pcmd("}")
2827 pcmd("const char *path = (const char *)path_;")
2828 pcmd("if (path) {")
2829 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2830 pcmd("}")
2834 pcmd("const char *path = (const char *)path_;")
2835 pcmd("if (path) {")
2836 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2837 pcmd("}")
2838 pcmd("if (tptr_) {")
2839 pcmd(" PRE_READ(tptr_, struct_timespec_sz);")
2840 pcmd("}")
2842 pcmd("const char *path = (const char *)path_;")
2843 pcmd("if (res > 0) {")
2844 pcmd(" if (path) {")
2845 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2846 pcmd(" }")
2847 pcmd(" if (tptr_) {")
2848 pcmd(" POST_READ(tptr_, struct_timespec_sz);")
2849 pcmd(" }")
2850 pcmd("}")
2854 pcmd("const char *path = (const char *)path_;")
2855 pcmd("if (path) {")
2856 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2857 pcmd("}")
2859 pcmd("const char *path = (const char *)path_;")
2860 pcmd("if (res > 0) {")
2861 pcmd(" if (path) {")
2862 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2863 pcmd(" }")
2864 pcmd("}")
2868 pcmd("const char *path = (const char *)path_;")
2869 pcmd("if (path) {")
2870 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2871 pcmd("}")
2873 pcmd("const char *path = (const char *)path_;")
2874 pcmd("if (res > 0) {")
2875 pcmd(" if (path) {")
2876 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2877 pcmd(" }")
2878 pcmd("}")
2882 pcmd("const char *path1 = (const char *)path1_;")
2883 pcmd("const char *path2 = (const char *)path2_;")
2884 pcmd("if (path1) {")
2885 pcmd(" PRE_READ(path1, __sanitizer::internal_strlen(path1) + 1);")
2886 pcmd("}")
2887 pcmd("if (path2) {")
2888 pcmd(" PRE_READ(path2, __sanitizer::internal_strlen(path2) + 1);")
2889 pcmd("}")
2891 pcmd("const char *path1 = (const char *)path1_;")
2892 pcmd("const char *path2 = (const char *)path2_;")
2893 pcmd("if (res == 0) {")
2894 pcmd(" if (path1) {")
2895 pcmd(" POST_READ(path1, __sanitizer::internal_strlen(path1) + 1);")
2896 pcmd(" }")
2897 pcmd(" if (path2) {")
2898 pcmd(" POST_READ(path2, __sanitizer::internal_strlen(path2) + 1);")
2899 pcmd(" }")
2900 pcmd("}")
2904 pcmd("const char *path = (const char *)path_;")
2905 pcmd("if (path) {")
2906 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2907 pcmd("}")
2909 pcmd("const char *path = (const char *)path_;")
2910 pcmd("if (res == 0) {")
2911 pcmd(" if (path) {")
2912 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2913 pcmd(" }")
2914 pcmd("}")
2918 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2919 pcmd("if (tptr) {")
2920 pcmd(" PRE_READ(tptr[0], struct_timespec_sz);")
2921 pcmd(" PRE_READ(tptr[1], struct_timespec_sz);")
2922 pcmd("}")
2924 pcmd("struct __sanitizer_timespec **tptr = (struct __sanitizer_timespec **)tptr_;")
2925 pcmd("if (res == 0) {")
2926 pcmd(" if (tptr) {")
2927 pcmd(" POST_READ(tptr[0], struct_timespec_sz);")
2928 pcmd(" POST_READ(tptr[1], struct_timespec_sz);")
2929 pcmd(" }")
2930 pcmd("}")
2934 pcmd("const char *path = (const char *)path_;")
2935 pcmd("if (path) {")
2936 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2937 pcmd("}")
2939 pcmd("const char *path = (const char *)path_;")
2940 pcmd("if (res == 0) {")
2941 pcmd(" if (path) {")
2942 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2943 pcmd(" }")
2944 pcmd("}")
2948 pcmd("const char *path = (const char *)path_;")
2949 pcmd("if (path) {")
2950 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
2951 pcmd("}")
2953 pcmd("const char *path = (const char *)path_;")
2954 pcmd("if (pid_) {")
2955 pcmd(" if (path) {")
2956 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
2957 pcmd(" }")
2958 pcmd("}")
2962 pcmd("if (timeout_) {")
2963 pcmd(" PRE_READ(timeout_, struct_timespec_sz);")
2964 pcmd("}")
2966 pcmd("if (res >= 0) {")
2967 pcmd(" if (timeout_) {")
2968 pcmd(" POST_READ(timeout_, struct_timespec_sz);")
2969 pcmd(" }")
2970 pcmd("}")
2974 pcmd("struct __sanitizer_mmsghdr *mmsg = (struct __sanitizer_mmsghdr *)mmsg_;")
2975 pcmd("if (mmsg) {")
2976 pcmd(" PRE_READ(mmsg, sizeof(struct __sanitizer_mmsghdr) * (vlen_ > 1024 ? 1024 : vlen_));")
2977 pcmd("}")
2979 pcmd("struct __sanitizer_mmsghdr *mmsg = (struct __sanitizer_mmsghdr *)mmsg_;")
2980 pcmd("if (res >= 0) {")
2981 pcmd(" if (mmsg) {")
2982 … pcmd(" POST_READ(mmsg, sizeof(struct __sanitizer_mmsghdr) * (vlen_ > 1024 ? 1024 : vlen_));")
2983 pcmd(" }")
2984 pcmd("}")
2988 pcmd("if (rqtp_) {")
2989 pcmd(" PRE_READ(rqtp_, struct_timespec_sz);")
2990 pcmd("}")
2992 pcmd("if (rqtp_) {")
2993 pcmd(" POST_READ(rqtp_, struct_timespec_sz);")
2994 pcmd("}")
2998 pcmd("if (ts_) {")
2999 pcmd(" PRE_READ(ts_, struct_timespec_sz);")
3000 pcmd("}")
3002 pcmd("if (res == 0) {")
3003 pcmd(" if (ts_) {")
3004 pcmd(" POST_READ(ts_, struct_timespec_sz);")
3005 pcmd(" }")
3006 pcmd("}")
3009 pcmd("/* Nothing to do */")
3011 pcmd("/* Nothing to do */")
3013 pcmd("/* Nothing to do */")
3015 pcmd("/* Nothing to do */")
3017 pcmd("/* Nothing to do */")
3020 pcmd("const char *path = (const char *)path_;")
3021 pcmd("if (path) {")
3022 pcmd(" PRE_READ(path, __sanitizer::internal_strlen(path) + 1);")
3023 pcmd("}")
3025 pcmd("const char *path = (const char *)path_;")
3026 pcmd("if (path) {")
3027 pcmd(" POST_READ(path, __sanitizer::internal_strlen(path) + 1);")
3028 pcmd("}")
3031 pcmd("/* Nothing to do */")
3034 pcmd("if (fhp_) {")
3035 pcmd(" PRE_READ(fhp_, fh_size_);")
3036 pcmd("}")
3039 pcmd("/* TODO */")
3041 pcmd("/* TODO */")
3043 pcmd("/* TODO */")
3045 pcmd("/* TODO */")
3047 pcmd("/* TODO */")
3049 pcmd("/* TODO */")
3051 pcmd("/* TODO */")
3053 pcmd("/* TODO */")
3055 pcmd("/* TODO */")
3057 pcmd("/* TODO */")
3059 pcmd("/* TODO */")
3061 pcmd("/* TODO */")
3063 pcmd("/* TODO */")