/[qemu]/qemu/linux-user/syscall.c
ViewVC logotype

Diff of /qemu/linux-user/syscall.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.55 by bellard, Mon Jan 3 23:31:27 2005 UTC revision 1.56 by bellard, Sun Jan 30 22:59:18 2005 UTC
# Line 1674  long do_syscall(void *cpu_env, int num, Line 1674  long do_syscall(void *cpu_env, int num,
1674      case TARGET_NR_chdir:      case TARGET_NR_chdir:
1675          ret = get_errno(chdir((const char *)arg1));          ret = get_errno(chdir((const char *)arg1));
1676          break;          break;
1677    #ifdef TARGET_NR_time
1678      case TARGET_NR_time:      case TARGET_NR_time:
1679          {          {
1680              int *time_ptr = (int *)arg1;              int *time_ptr = (int *)arg1;
# Line 1682  long do_syscall(void *cpu_env, int num, Line 1683  long do_syscall(void *cpu_env, int num,
1683                  tswap32s(time_ptr);                  tswap32s(time_ptr);
1684          }          }
1685          break;          break;
1686    #endif
1687      case TARGET_NR_mknod:      case TARGET_NR_mknod:
1688          ret = get_errno(mknod((const char *)arg1, arg2, arg3));          ret = get_errno(mknod((const char *)arg1, arg2, arg3));
1689          break;          break;
# Line 2168  long do_syscall(void *cpu_env, int num, Line 2170  long do_syscall(void *cpu_env, int num,
2170                                      arg6));                                      arg6));
2171  #endif  #endif
2172          break;          break;
2173    #ifdef TARGET_NR_mmap2
2174      case TARGET_NR_mmap2:      case TARGET_NR_mmap2:
2175  #if defined(TARGET_SPARC)  #if defined(TARGET_SPARC)
2176  #define MMAP_SHIFT 12  #define MMAP_SHIFT 12
# Line 2179  long do_syscall(void *cpu_env, int num, Line 2182  long do_syscall(void *cpu_env, int num,
2182                                      arg5,                                      arg5,
2183                                      arg6 << MMAP_SHIFT));                                      arg6 << MMAP_SHIFT));
2184          break;          break;
2185    #endif
2186      case TARGET_NR_munmap:      case TARGET_NR_munmap:
2187          ret = get_errno(target_munmap(arg1, arg2));          ret = get_errno(target_munmap(arg1, arg2));
2188          break;          break;
# Line 2471  long do_syscall(void *cpu_env, int num, Line 2475  long do_syscall(void *cpu_env, int num,
2475          break;          break;
2476      case TARGET_NR_getdents:      case TARGET_NR_getdents:
2477  #if TARGET_LONG_SIZE != 4  #if TARGET_LONG_SIZE != 4
2478  #error not supported  #warning not supported
2479  #elif TARGET_LONG_SIZE == 4 && HOST_LONG_SIZE == 8  #elif TARGET_LONG_SIZE == 4 && HOST_LONG_SIZE == 8
2480          {          {
2481              struct target_dirent *target_dirp = (void *)arg2;              struct target_dirent *target_dirp = (void *)arg2;
# Line 2746  long do_syscall(void *cpu_env, int num, Line 2750  long do_syscall(void *cpu_env, int num,
2750          break;          break;
2751      }      }
2752  #endif  #endif
2753    #ifdef TARGET_NR_truncate64
2754      case TARGET_NR_truncate64:      case TARGET_NR_truncate64:
2755          goto unimplemented;          goto unimplemented;
2756    #endif
2757    #ifdef TARGET_NR_ftruncate64
2758      case TARGET_NR_ftruncate64:      case TARGET_NR_ftruncate64:
2759          goto unimplemented;          goto unimplemented;
2760    #endif
2761    #ifdef TARGET_NR_stat64
2762      case TARGET_NR_stat64:      case TARGET_NR_stat64:
2763          ret = get_errno(stat(path((const char *)arg1), &st));          ret = get_errno(stat(path((const char *)arg1), &st));
2764          goto do_stat64;          goto do_stat64;
2765    #endif
2766    #ifdef TARGET_NR_lstat64
2767      case TARGET_NR_lstat64:      case TARGET_NR_lstat64:
2768          ret = get_errno(lstat(path((const char *)arg1), &st));          ret = get_errno(lstat(path((const char *)arg1), &st));
2769          goto do_stat64;          goto do_stat64;
2770    #endif
2771    #ifdef TARGET_NR_fstat64
2772      case TARGET_NR_fstat64:      case TARGET_NR_fstat64:
2773          {          {
2774              ret = get_errno(fstat(arg1, &st));              ret = get_errno(fstat(arg1, &st));
# Line 2783  long do_syscall(void *cpu_env, int num, Line 2796  long do_syscall(void *cpu_env, int num,
2796              }              }
2797          }          }
2798          break;          break;
2799    #endif
2800  #ifdef USE_UID16  #ifdef USE_UID16
2801      case TARGET_NR_lchown:      case TARGET_NR_lchown:
2802          ret = get_errno(lchown((const char *)arg1, low2highuid(arg2), low2highgid(arg3)));          ret = get_errno(lchown((const char *)arg1, low2highuid(arg2), low2highgid(arg3)));
# Line 2894  long do_syscall(void *cpu_env, int num, Line 2907  long do_syscall(void *cpu_env, int num,
2907          break;          break;
2908  #endif /* USE_UID16 */  #endif /* USE_UID16 */
2909    
2910    #ifdef TARGET_NR_lchown32
2911      case TARGET_NR_lchown32:      case TARGET_NR_lchown32:
2912          ret = get_errno(lchown((const char *)arg1, arg2, arg3));          ret = get_errno(lchown((const char *)arg1, arg2, arg3));
2913          break;          break;
2914    #endif
2915    #ifdef TARGET_NR_getuid32
2916      case TARGET_NR_getuid32:      case TARGET_NR_getuid32:
2917          ret = get_errno(getuid());          ret = get_errno(getuid());
2918          break;          break;
2919    #endif
2920    #ifdef TARGET_NR_getgid32
2921      case TARGET_NR_getgid32:      case TARGET_NR_getgid32:
2922          ret = get_errno(getgid());          ret = get_errno(getgid());
2923          break;          break;
2924    #endif
2925    #ifdef TARGET_NR_geteuid32
2926      case TARGET_NR_geteuid32:      case TARGET_NR_geteuid32:
2927          ret = get_errno(geteuid());          ret = get_errno(geteuid());
2928          break;          break;
2929    #endif
2930    #ifdef TARGET_NR_getegid32
2931      case TARGET_NR_getegid32:      case TARGET_NR_getegid32:
2932          ret = get_errno(getegid());          ret = get_errno(getegid());
2933          break;          break;
2934    #endif
2935    #ifdef TARGET_NR_setreuid32
2936      case TARGET_NR_setreuid32:      case TARGET_NR_setreuid32:
2937          ret = get_errno(setreuid(arg1, arg2));          ret = get_errno(setreuid(arg1, arg2));
2938          break;          break;
2939    #endif
2940    #ifdef TARGET_NR_setregid32
2941      case TARGET_NR_setregid32:      case TARGET_NR_setregid32:
2942          ret = get_errno(setregid(arg1, arg2));          ret = get_errno(setregid(arg1, arg2));
2943          break;          break;
2944    #endif
2945    #ifdef TARGET_NR_getgroups32
2946      case TARGET_NR_getgroups32:      case TARGET_NR_getgroups32:
2947          goto unimplemented;          goto unimplemented;
2948    #endif
2949    #ifdef TARGET_NR_setgroups32
2950      case TARGET_NR_setgroups32:      case TARGET_NR_setgroups32:
2951          goto unimplemented;          goto unimplemented;
2952    #endif
2953    #ifdef TARGET_NR_fchown32
2954      case TARGET_NR_fchown32:      case TARGET_NR_fchown32:
2955          ret = get_errno(fchown(arg1, arg2, arg3));          ret = get_errno(fchown(arg1, arg2, arg3));
2956          break;          break;
2957    #endif
2958    #ifdef TARGET_NR_setresuid32
2959      case TARGET_NR_setresuid32:      case TARGET_NR_setresuid32:
2960          ret = get_errno(setresuid(arg1, arg2, arg3));          ret = get_errno(setresuid(arg1, arg2, arg3));
2961          break;          break;
2962    #endif
2963    #ifdef TARGET_NR_getresuid32
2964      case TARGET_NR_getresuid32:      case TARGET_NR_getresuid32:
2965          {          {
2966              int ruid, euid, suid;              int ruid, euid, suid;
# Line 2936  long do_syscall(void *cpu_env, int num, Line 2972  long do_syscall(void *cpu_env, int num,
2972              }              }
2973          }          }
2974          break;          break;
2975    #endif
2976    #ifdef TARGET_NR_setresgid32
2977      case TARGET_NR_setresgid32:      case TARGET_NR_setresgid32:
2978          ret = get_errno(setresgid(arg1, arg2, arg3));          ret = get_errno(setresgid(arg1, arg2, arg3));
2979          break;          break;
2980    #endif
2981    #ifdef TARGET_NR_getresgid32
2982      case TARGET_NR_getresgid32:      case TARGET_NR_getresgid32:
2983          {          {
2984              int rgid, egid, sgid;              int rgid, egid, sgid;
# Line 2950  long do_syscall(void *cpu_env, int num, Line 2990  long do_syscall(void *cpu_env, int num,
2990              }              }
2991          }          }
2992          break;          break;
2993    #endif
2994    #ifdef TARGET_NR_chown32
2995      case TARGET_NR_chown32:      case TARGET_NR_chown32:
2996          ret = get_errno(chown((const char *)arg1, arg2, arg3));          ret = get_errno(chown((const char *)arg1, arg2, arg3));
2997          break;          break;
2998    #endif
2999    #ifdef TARGET_NR_setuid32
3000      case TARGET_NR_setuid32:      case TARGET_NR_setuid32:
3001          ret = get_errno(setuid(arg1));          ret = get_errno(setuid(arg1));
3002          break;          break;
3003    #endif
3004    #ifdef TARGET_NR_setgid32
3005      case TARGET_NR_setgid32:      case TARGET_NR_setgid32:
3006          ret = get_errno(setgid(arg1));          ret = get_errno(setgid(arg1));
3007          break;          break;
3008    #endif
3009    #ifdef TARGET_NR_setfsuid32
3010      case TARGET_NR_setfsuid32:      case TARGET_NR_setfsuid32:
3011          ret = get_errno(setfsuid(arg1));          ret = get_errno(setfsuid(arg1));
3012          break;          break;
3013    #endif
3014    #ifdef TARGET_NR_setfsgid32
3015      case TARGET_NR_setfsgid32:      case TARGET_NR_setfsgid32:
3016          ret = get_errno(setfsgid(arg1));          ret = get_errno(setfsgid(arg1));
3017          break;          break;
3018    #endif
3019    
3020      case TARGET_NR_pivot_root:      case TARGET_NR_pivot_root:
3021          goto unimplemented;          goto unimplemented;

Legend:
Removed from v.1.55  
changed lines
  Added in v.1.56

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26