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