!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/usr/src/linux-headers-5.15.0-151/arch/csky/include/asm/   drwxr-xr-x
Free 28.34 GB of 117.98 GB (24.02%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     uaccess.h (5.15 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0 */

#ifndef __ASM_CSKY_UACCESS_H
#define __ASM_CSKY_UACCESS_H

#define user_addr_max() (current_thread_info()->addr_limit.seg)

static inline int __access_ok(unsigned long addr, unsigned long size)
{
    unsigned long limit = user_addr_max();

    return (size <= limit) && (addr <= (limit - size));
}
#define __access_ok __access_ok

/*
 * __put_user_fn
 */
extern int __put_user_bad(void);

#define __put_user_asm_b(x, ptr, err)            \
do {                            \
    int errcode;                    \
    __asm__ __volatile__(                \
    "1:     stb   %1, (%2,0)    \n"        \
    "       br    3f        \n"        \
    "2:     mov   %0, %3        \n"        \
    "       br    3f        \n"        \
    ".section __ex_table, \"a\"    \n"        \
    ".align   2            \n"        \
    ".long    1b,2b            \n"        \
    ".previous            \n"        \
    "3:                \n"        \
    : "=r"(err), "=r"(x), "=r"(ptr), "=r"(errcode)    \
    : "0"(err), "1"(x), "2"(ptr), "3"(-EFAULT)    \
    : "memory");                    \
} while (0)

#define __put_user_asm_h(x, ptr, err)            \
do {                            \
    int errcode;                    \
    __asm__ __volatile__(                \
    "1:     sth   %1, (%2,0)    \n"        \
    "       br    3f        \n"        \
    "2:     mov   %0, %3        \n"        \
    "       br    3f        \n"        \
    ".section __ex_table, \"a\"    \n"        \
    ".align   2            \n"        \
    ".long    1b,2b            \n"        \
    ".previous            \n"        \
    "3:                \n"        \
    : "=r"(err), "=r"(x), "=r"(ptr), "=r"(errcode)    \
    : "0"(err), "1"(x), "2"(ptr), "3"(-EFAULT)    \
    : "memory");                    \
} while (0)

#define __put_user_asm_w(x, ptr, err)            \
do {                            \
    int errcode;                    \
    __asm__ __volatile__(                \
    "1:     stw   %1, (%2,0)    \n"        \
    "       br    3f        \n"        \
    "2:     mov   %0, %3        \n"        \
    "       br    3f        \n"        \
    ".section __ex_table,\"a\"    \n"        \
    ".align   2            \n"        \
    ".long    1b, 2b        \n"        \
    ".previous            \n"        \
    "3:                \n"        \
    : "=r"(err), "=r"(x), "=r"(ptr), "=r"(errcode)    \
    : "0"(err), "1"(x), "2"(ptr), "3"(-EFAULT)    \
    : "memory");                    \
} while (0)

#define __put_user_asm_64(x, ptr, err)            \
do {                            \
    int tmp;                    \
    int errcode;                    \
                            \
    __asm__ __volatile__(                \
    "     ldw     %3, (%1, 0)     \n"        \
    "1:   stw     %3, (%2, 0)     \n"        \
    "     ldw     %3, (%1, 4)     \n"        \
    "2:   stw     %3, (%2, 4)     \n"        \
    "     br      4f              \n"        \
    "3:   mov     %0, %4          \n"        \
    "     br      4f              \n"        \
    ".section __ex_table, \"a\"   \n"        \
    ".align   2                   \n"        \
    ".long    1b, 3b              \n"        \
    ".long    2b, 3b              \n"        \
    ".previous                    \n"        \
    "4:                           \n"        \
    : "=r"(err), "=r"(x), "=r"(ptr),        \
      "=r"(tmp), "=r"(errcode)            \
    : "0"(err), "1"(x), "2"(ptr), "3"(0),        \
      "4"(-EFAULT)                    \
    : "memory");                    \
} while (0)

static inline int __put_user_fn(size_t size, void __user *ptr, void *x)
{
    int retval = 0;
    u32 tmp;

    switch (size) {
    case 1:
        tmp = *(u8 *)x;
        __put_user_asm_b(tmp, ptr, retval);
        break;
    case 2:
        tmp = *(u16 *)x;
        __put_user_asm_h(tmp, ptr, retval);
        break;
    case 4:
        tmp = *(u32 *)x;
        __put_user_asm_w(tmp, ptr, retval);
        break;
    case 8:
        __put_user_asm_64(x, (u64 *)ptr, retval);
        break;
    }

    return retval;
}
#define __put_user_fn __put_user_fn

/*
 * __get_user_fn
 */
extern int __get_user_bad(void);

#define __get_user_asm_common(x, ptr, ins, err)        \
do {                            \
    int errcode;                    \
    __asm__ __volatile__(                \
    "1:   " ins " %1, (%4, 0)    \n"        \
    "       br    3f        \n"        \
    "2:     mov   %0, %2        \n"        \
    "       movi  %1, 0        \n"        \
    "       br    3f        \n"        \
    ".section __ex_table,\"a\"      \n"        \
    ".align   2            \n"        \
    ".long    1b, 2b        \n"        \
    ".previous            \n"        \
    "3:                \n"         \
    : "=r"(err), "=r"(x), "=r"(errcode)        \
    : "0"(0), "r"(ptr), "2"(-EFAULT)        \
    : "memory");                    \
} while (0)

#define __get_user_asm_64(x, ptr, err)            \
do {                            \
    int tmp;                    \
    int errcode;                    \
                            \
    __asm__ __volatile__(                \
    "1:   ldw     %3, (%2, 0)     \n"        \
    "     stw     %3, (%1, 0)     \n"        \
    "2:   ldw     %3, (%2, 4)     \n"        \
    "     stw     %3, (%1, 4)     \n"        \
    "     br      4f              \n"        \
    "3:   mov     %0, %4          \n"        \
    "     br      4f              \n"        \
    ".section __ex_table, \"a\"   \n"        \
    ".align   2                   \n"        \
    ".long    1b, 3b              \n"        \
    ".long    2b, 3b              \n"        \
    ".previous                    \n"        \
    "4:                           \n"        \
    : "=r"(err), "=r"(x), "=r"(ptr),        \
      "=r"(tmp), "=r"(errcode)            \
    : "0"(err), "1"(x), "2"(ptr), "3"(0),        \
      "4"(-EFAULT)                    \
    : "memory");                    \
} while (0)

static inline int __get_user_fn(size_t size, const void __user *ptr, void *x)
{
    int retval;
    u32 tmp;

    switch (size) {
    case 1:
        __get_user_asm_common(tmp, ptr, "ldb", retval);
        *(u8 *)x = (u8)tmp;
        break;
    case 2:
        __get_user_asm_common(tmp, ptr, "ldh", retval);
        *(u16 *)x = (u16)tmp;
        break;
    case 4:
        __get_user_asm_common(tmp, ptr, "ldw", retval);
        *(u32 *)x = (u32)tmp;
        break;
    case 8:
        __get_user_asm_64(x, ptr, retval);
        break;
    }

    return retval;
}
#define __get_user_fn __get_user_fn

unsigned long raw_copy_from_user(void *to, const void *from, unsigned long n);
unsigned long raw_copy_to_user(void *to, const void *from, unsigned long n);

unsigned long __clear_user(void __user *to, unsigned long n);
#define __clear_user __clear_user

#include <asm/segment.h>
#include <asm-generic/uaccess.h>

#endif /* __ASM_CSKY_UACCESS_H */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0036 ]--