if (compat_oldlenp && get_user(oldlen, compat_oldlenp)) return -EFAULT; result = do_sysctl(compat_ptr(tmp.name), tmp.nlen, compat_ptr(tmp.oldval), oldlen, compat_ptr(tmp.newval), tmp.newlen); if (result >= 0) { oldlen = result; result = 0; } if (compat_oldlenp && put_user(oldlen, compat_oldlenp)) return -EFAULT; return result;} #endif /* CONFIG_COMPAT */Lines 1501–1519 of 1519. Previous lines
if (compat_oldlenp && get_user(oldlen, compat_oldlenp)) return -EFAULT; result = do_sysctl(compat_ptr(tmp.name), tmp.nlen, compat_ptr(tmp.oldval), oldlen, compat_ptr(tmp.newval), tmp.newlen); if (result >= 0) { oldlen = result; result = 0; } if (compat_oldlenp && put_user(oldlen, compat_oldlenp)) return -EFAULT; return result; } #endif /* CONFIG_COMPAT */