Home | History | Annotate | Download | only in strace

Lines Matching defs:scno

484 	if (tcp->scno < 0 || tcp->scno >= nsyscalls)
486 if (sysent[tcp->scno].sys_func == printargs)
489 if (sysent[tcp->scno].sys_func == sys_read ||
490 sysent[tcp->scno].sys_func == sys_pread ||
491 sysent[tcp->scno].sys_func == sys_pread64 ||
492 sysent[tcp->scno].sys_func == sys_recv ||
493 sysent[tcp->scno].sys_func == sys_recvfrom)
495 else if (sysent[tcp->scno].sys_func == sys_readv)
500 if (sysent[tcp->scno].sys_func == sys_write ||
501 sysent[tcp->scno].sys_func == sys_pwrite ||
502 sysent[tcp->scno].sys_func == sys_pwrite64 ||
503 sysent[tcp->scno].sys_func == sys_send ||
504 sysent[tcp->scno].sys_func == sys_sendto)
506 else if (sysent[tcp->scno].sys_func == sys_writev)
551 tcp->scno = subcall + tcp->u_arg[0];
552 if (sysent[tcp->scno].nargs != -1)
553 tcp->u_nargs = sysent[tcp->scno].nargs;
562 tcp->scno = subcall + tcp->u_arg[0];
564 for (i = 0; i < sysent[tcp->scno].nargs; i++) {
581 tcp->u_nargs = sysent[tcp->scno].nargs;
590 tcp->scno = subcall + i;
591 if (sysent[tcp->scno].nargs != -1)
592 tcp->u_nargs = sysent[tcp->scno].nargs;
601 tcp->scno = subcall + tcp->u_arg[5];
602 if (sysent[tcp->scno].nargs != -1)
603 tcp->u_nargs = sysent[tcp->scno].nargs;
610 if (subcalls_table[i].call == tcp->scno) break;
613 tcp->scno = subcalls_table[i].subcalls[tcp->u_arg[0]];
635 if (tcp->scno < 0 || tcp->scno >= nsyscalls)
638 func = sysent[tcp->scno].sys_func;
739 long scno = 0;
747 * (new style) in gpr2. We cannot recover the scno again
768 * Since kernel version 2.5.44 the scno gets passed in gpr2.
770 scno = syscall_mode;
773 * Old style of "passing" the scno via the SVC instruction.
804 scno = opcode & 0xff;
827 scno = ptrace(PTRACE_PEEKTEXT, tcp->pid, svc_addr, 0);
831 scno >>= 48;
833 scno >>= 16;
840 scno = (scno | tmp) & 0xff;
844 if (upeek(tcp, sizeof(unsigned long)*PT_R0, &scno) < 0)
848 if (scno == 0 && (tcp->flags & TCB_WAITEXECVE)) {
887 scno = regs.r8;
896 if (upeek(tcp, PT_ORIG_P0, &scno))
899 if (upeek(tcp, 4*ORIG_EAX, &scno) < 0)
902 if (upeek(tcp, 8*ORIG_RAX, &scno) < 0)
973 if (upeek(tcp, PT_R1, &scno) < 0) /* orig eax */
976 if (upeek (tcp, PT_R15, &scno) < 0)
1017 scno = regs.ARM_r7;
1023 scno = ptrace(PTRACE_PEEKTEXT, tcp->pid, (void *)(regs.ARM_pc - 4), NULL);
1027 if (scno == 0 && (tcp->flags & TCB_WAITEXECVE)) {
1037 if (scno == 0xef000000) {
1038 scno = regs.ARM_r7;
1040 if ((scno & 0x0ff00000) != 0x0f900000) {
1042 scno);
1049 scno &= 0x000fffff;
1052 if (scno & 0x0f0000) {
1057 scno &= 0x0000ffff;
1072 if (upeek(tcp, 4*PT_ORIG_D0, &scno) < 0)
1083 scno = r2;
1086 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) {
1091 if (scno < 0 || scno > nsyscalls) {
1094 fprintf (stderr, "stray syscall exit: v0 = %ld\n", scno);
1103 if (upeek(tcp, REG_V0, &scno) < 0)
1107 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) {
1112 if (scno < 0 || scno > nsyscalls) {
1115 fprintf (stderr, "stray syscall exit: v0 = %ld\n", scno);
1128 if (upeek(tcp, REG_R0, &scno) < 0)
1132 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) {
1141 if (scno < 0 || scno > nsyscalls) {
1144 fprintf (stderr, "stray syscall exit: r0 = %ld\n", scno);
1213 scno = 156;
1215 scno = regs.u_regs[U_REG_G1];
1216 if (scno == 0) {
1217 scno = regs.u_regs[U_REG_O0];
1222 if (upeek(tcp, PT_GR20, &scno) < 0)
1235 if (upeek(tcp, 4*(REG_REG0+3), &scno) < 0)
1238 if (scno < 0) {
1242 long correct_scno = (scno & 0xff);
1247 scno,
1249 scno = correct_scno;
1254 if (scno == 0 && tcp->flags & TCB_WAITEXECVE) {
1260 if (upeek(tcp, REG_SYSCALL, &scno) < 0)
1262 scno &= 0xFFFF;
1272 if (upeek(tcp, 4*PT_R9, &scno) < 0)
1275 if (upeek(tcp, PTREGS_OFFSET_REG(10), &scno) < 0)
1286 if (upeek(tcp, 0, &scno) < 0)
1292 if (upeek(tcp, uoff(u_arg[7]), &scno) < 0)
1306 scno = tcp->status.PR_SYSCALL;
1309 scno = tcp->status.PR_WHAT;
1318 pread(tcp->pfd, &scnoscno), regs.r_esp + sizeof(int));
1321 scno = regs.r_eax;
1329 tcp->scno = scno;
1337 long scno = tcp->scno;
1339 if (scno >= 0 && scno < nsyscalls && sysent[scno].native_scno != 0)
1340 scno = sysent[scno].native_scno;
1343 scno += NR_SYSCALL_BASE;
1344 return scno;
1358 int scno = known_scno(tcp);
1363 scno == SYS_fork
1365 || scno == SYS_vfork
1368 || scno == SYS_fork1
1371 || scno == SYS_forkall
1374 || scno == SYS_rfork1
1377 || scno == SYS_rforkall
1400 if (scno == 0) {
1406 if (scno != 0) {
1442 syscall_mode = tcp->scno;
1450 && (gpr2 == -ENOSYS || gpr2 == tcp->scno)) {
1537 if (tcp->scno >= 0 && tcp->scno < nsyscalls &&
1538 sysent[tcp->scno].sys_flags & SYSCALL_NEVER_FAILS) {
1985 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
1986 tcp->u_nargs = sysent[tcp->scno].nargs;
1997 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
1998 tcp->u_nargs = sysent[tcp->scno].nargs;
2002 /* WTA: if scno is out-of-bounds this will bomb. Add range-check
2003 * for scno somewhere above here!
2028 if (tcp->scno >= 0 && tcp->scno < nsyscalls
2029 && sysent[tcp->scno].nargs != -1)
2030 tcp->u_nargs = sysent[tcp->scno
2059 if (tcp->scno >= 0 && tcp->scno < nsyscalls
2060 && sysent[tcp->scno].nargs != -1)
2061 tcp->u_nargs = sysent[tcp->scno].nargs;
2072 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2073 nargs = tcp->u_nargs = sysent[tcp->scno].nargs;
2092 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2093 nargs = tcp->u_nargs = sysent[tcp->scno].nargs;
2118 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2119 tcp->u_nargs = sysent[tcp->scno].nargs;
2134 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2135 tcp->u_nargs = sysent[tcp->scno].nargs;
2145 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2146 tcp->u_nargs = sysent[tcp->scno].nargs;
2158 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2159 tcp->u_nargs = sysent[tcp->scno].nargs;
2166 tcp->u_nargs = sysent[tcp->scno].nargs;
2178 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2179 tcp->u_nargs = sysent[tcp->scno].nargs;
2195 tcp->u_nargs = sysent[tcp->scno].nargs;
2212 assert(sysent[tcp->scno].nargs <
2216 tcp->u_nargs = sysent[tcp->scno].nargs;
2231 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2232 tcp->u_nargs = sysent[tcp->scno].nargs;
2243 if (tcp->scno >= 0 && tcp->scno < nsyscalls)
2244 tcp->u_nargs = sysent[tcp->scno].nargs;
2260 if (tcp->scno >= 0 && tcp->scno < nsyscalls)
2261 tcp->u_nargs = sysent[tcp->scno].nargs;
2272 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2273 tcp->u_nargs = sysent[tcp->scno].nargs;
2284 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2285 tcp->u_nargs = sysent[tcp->scno].nargs;
2296 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2297 tcp->u_nargs = sysent[tcp->scno].nargs;
2310 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2311 tcp->u_nargs = sysent[tcp->scno].nargs;
2329 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2330 tcp->u_nargs = sysent[tcp->scno].nargs;
2347 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2348 tcp->u_nargs = sysent[tcp->scno].nargs;
2354 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2355 tcp->u_nargs = sysent[tcp->scno].nargs;
2364 if (tcp->scno >= 0 && tcp->scno < nsyscalls && sysent[tcp->scno].nargs != -1)
2365 tcp->u_nargs = sysent[tcp->scno].nargs;
2375 if (tcp->scno >= 0 && tcp->scno < nsyscalls &&
2376 sysent[tcp->scno].nargs > tcp->status.val)
2377 tcp->u_nargs = sysent[tcp->scno].nargs;
2431 if (res == 1 && tcp->scno >= 0 && tcp->scno < nsyscalls &&
2432 !(qual_flags[tcp->scno] & QUAL_TRACE)) {
2442 else if (tcp->scno >= nsyscalls || tcp->scno < 0)
2443 tprintf("syscall_%lu", tcp->scno);
2445 tprintf("%s", sysent[tcp->scno].sys_name);
2468 if (tcp->scno >= nsyscalls || tcp->scno < 0
2469 || (qual_flags[tcp->scno] & QUAL_RAW))
2474 sys_res = (*sysent[tcp->scno].sys_func)(tcp);
2480 if (tcp->scno >= nsyscalls || tcp->scno < 0 ||
2481 qual_flags[tcp->scno] & QUAL_RAW) {
2596 else if (tcp->scno >= nsyscalls || tcp->scno < 0)
2597 tprintf("syscall_%lu(", tcp->scno);
2599 tprintf("%s(", sysent[tcp->scno].sys_name);
2699 if (tcp->scno >=0 && tcp->scno < nsyscalls && !(qual_flags[tcp->scno] & QUAL_TRACE)) {
2713 if (tcp->scno >= nsyscalls || tcp->scno < 0)
2714 tprintf("syscall_%lu(", tcp->scno);
2716 tprintf("%s(", sysent[tcp->scno].sys_name);
2717 if (tcp->scno >= nsyscalls || tcp->scno < 0 ||
2718 ((qual_flags[tcp->scno] & QUAL_RAW) &&
2719 sysent[tcp->scno].sys_func != sys_exit))
2722 sys_res = (*sysent[tcp->scno].sys_func)(tcp);
2810 int i, scno, nargs;
2813 if ((scno = tcp->u_arg[0]) > nsyscalls) {
2814 fprintf(stderr, "Bogus syscall: %u\n", scno);
2817 nargs = sysent[scno].nargs;
2818 tprintf("%s", sysent[scno].sys_name);