404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.137.145.254: ~ $
/* Checking macros for fcntl functions.
   Copyright (C) 2007-2018 Free Software Foundation, Inc.
   This file is part of the GNU C Library.

   The GNU C Library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.

   The GNU C Library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with the GNU C Library; if not, see
   <http://www.gnu.org/licenses/>.  */

#ifndef	_FCNTL_H
# error "Never include <bits/fcntl2.h> directly; use <fcntl.h> instead."
#endif

/* Check that calls to open and openat with O_CREAT or O_TMPFILE set have an
   appropriate third/fourth parameter.  */
#ifndef __USE_FILE_OFFSET64
extern int __open_2 (const char *__path, int __oflag) __nonnull ((1));
extern int __REDIRECT (__open_alias, (const char *__path, int __oflag, ...),
		       open) __nonnull ((1));
#else
extern int __REDIRECT (__open_2, (const char *__path, int __oflag),
		       __open64_2) __nonnull ((1));
extern int __REDIRECT (__open_alias, (const char *__path, int __oflag, ...),
		       open64) __nonnull ((1));
#endif
__errordecl (__open_too_many_args,
	     "open can be called either with 2 or 3 arguments, not more");
__errordecl (__open_missing_mode,
	     "open with O_CREAT or O_TMPFILE in second argument needs 3 arguments");

__fortify_function int
open (const char *__path, int __oflag, ...)
{
  if (__va_arg_pack_len () > 1)
    __open_too_many_args ();

  if (__builtin_constant_p (__oflag))
    {
      if (__OPEN_NEEDS_MODE (__oflag) && __va_arg_pack_len () < 1)
	{
	  __open_missing_mode ();
	  return __open_2 (__path, __oflag);
	}
      return __open_alias (__path, __oflag, __va_arg_pack ());
    }

  if (__va_arg_pack_len () < 1)
    return __open_2 (__path, __oflag);

  return __open_alias (__path, __oflag, __va_arg_pack ());
}


#ifdef __USE_LARGEFILE64
extern int __open64_2 (const char *__path, int __oflag) __nonnull ((1));
extern int __REDIRECT (__open64_alias, (const char *__path, int __oflag,
					...), open64) __nonnull ((1));
__errordecl (__open64_too_many_args,
	     "open64 can be called either with 2 or 3 arguments, not more");
__errordecl (__open64_missing_mode,
	     "open64 with O_CREAT or O_TMPFILE in second argument needs 3 arguments");

__fortify_function int
open64 (const char *__path, int __oflag, ...)
{
  if (__va_arg_pack_len () > 1)
    __open64_too_many_args ();

  if (__builtin_constant_p (__oflag))
    {
      if (__OPEN_NEEDS_MODE (__oflag) && __va_arg_pack_len () < 1)
	{
	  __open64_missing_mode ();
	  return __open64_2 (__path, __oflag);
	}
      return __open64_alias (__path, __oflag, __va_arg_pack ());
    }

  if (__va_arg_pack_len () < 1)
    return __open64_2 (__path, __oflag);

  return __open64_alias (__path, __oflag, __va_arg_pack ());
}
#endif


#ifdef __USE_ATFILE
# ifndef __USE_FILE_OFFSET64
extern int __openat_2 (int __fd, const char *__path, int __oflag)
     __nonnull ((2));
extern int __REDIRECT (__openat_alias, (int __fd, const char *__path,
					int __oflag, ...), openat)
     __nonnull ((2));
# else
extern int __REDIRECT (__openat_2, (int __fd, const char *__path,
				    int __oflag), __openat64_2)
     __nonnull ((2));
extern int __REDIRECT (__openat_alias, (int __fd, const char *__path,
					int __oflag, ...), openat64)
     __nonnull ((2));
# endif
__errordecl (__openat_too_many_args,
	     "openat can be called either with 3 or 4 arguments, not more");
__errordecl (__openat_missing_mode,
	     "openat with O_CREAT or O_TMPFILE in third argument needs 4 arguments");

__fortify_function int
openat (int __fd, const char *__path, int __oflag, ...)
{
  if (__va_arg_pack_len () > 1)
    __openat_too_many_args ();

  if (__builtin_constant_p (__oflag))
    {
      if (__OPEN_NEEDS_MODE (__oflag) && __va_arg_pack_len () < 1)
	{
	  __openat_missing_mode ();
	  return __openat_2 (__fd, __path, __oflag);
	}
      return __openat_alias (__fd, __path, __oflag, __va_arg_pack ());
    }

  if (__va_arg_pack_len () < 1)
    return __openat_2 (__fd, __path, __oflag);

  return __openat_alias (__fd, __path, __oflag, __va_arg_pack ());
}


# ifdef __USE_LARGEFILE64
extern int __openat64_2 (int __fd, const char *__path, int __oflag)
     __nonnull ((2));
extern int __REDIRECT (__openat64_alias, (int __fd, const char *__path,
					  int __oflag, ...), openat64)
     __nonnull ((2));
__errordecl (__openat64_too_many_args,
	     "openat64 can be called either with 3 or 4 arguments, not more");
__errordecl (__openat64_missing_mode,
	     "openat64 with O_CREAT or O_TMPFILE in third argument needs 4 arguments");

__fortify_function int
openat64 (int __fd, const char *__path, int __oflag, ...)
{
  if (__va_arg_pack_len () > 1)
    __openat64_too_many_args ();

  if (__builtin_constant_p (__oflag))
    {
      if (__OPEN_NEEDS_MODE (__oflag) && __va_arg_pack_len () < 1)
	{
	  __openat64_missing_mode ();
	  return __openat64_2 (__fd, __path, __oflag);
	}
      return __openat64_alias (__fd, __path, __oflag, __va_arg_pack ());
    }

  if (__va_arg_pack_len () < 1)
    return __openat64_2 (__fd, __path, __oflag);

  return __openat64_alias (__fd, __path, __oflag, __va_arg_pack ());
}
# endif
#endif

Filemanager

Name Type Size Permission Actions
types Folder 0755
_G_config.h File 1.41 KB 0644
a.out.h File 268 B 0644
auxv.h File 3.39 KB 0644
byteswap-16.h File 1.69 KB 0644
byteswap.h File 5.53 KB 0644
cmathcalls.h File 4.04 KB 0644
confname.h File 23.15 KB 0644
cpu-set.h File 4.41 KB 0644
dirent.h File 1.69 KB 0644
dlfcn.h File 2.46 KB 0644
elfclass.h File 426 B 0644
endian.h File 176 B 0644
environments.h File 3.7 KB 0644
epoll.h File 1.04 KB 0644
errno.h File 1.39 KB 0644
error.h File 2.62 KB 0644
eventfd.h File 1.1 KB 0644
fcntl-linux.h File 14.02 KB 0644
fcntl.h File 2.19 KB 0644
fcntl2.h File 5.44 KB 0644
fenv.h File 4.5 KB 0644
fenvinline.h File 190 B 0644
floatn-common.h File 9.2 KB 0644
floatn.h File 4.32 KB 0644
flt-eval-method.h File 1.19 KB 0644
fp-fast.h File 1.19 KB 0644
fp-logb.h File 1011 B 0644
getopt_core.h File 3.58 KB 0644
getopt_ext.h File 2.97 KB 0644
getopt_posix.h File 1.77 KB 0644
hwcap.h File 971 B 0644
in.h File 9.22 KB 0644
initspin.h File 25 B 0644
inotify.h File 1.05 KB 0644
ioctl-types.h File 2.4 KB 0644
ioctls.h File 4.37 KB 0644
ipc.h File 2.02 KB 0644
ipctypes.h File 1.15 KB 0644
iscanonical.h File 2.42 KB 0644
libc-header-start.h File 2.55 KB 0644
libio-ldbl.h File 1.06 KB 0644
libio.h File 16.82 KB 0644
libm-simd-decl-stubs.h File 2.93 KB 0644
link.h File 4.18 KB 0644
local_lim.h File 3.11 KB 0644
locale.h File 1.33 KB 0644
long-double.h File 923 B 0644
math-finite.h File 5.25 KB 0644
math-vector.h File 2.25 KB 0644
mathcalls-helper-functions.h File 1.72 KB 0644
mathcalls.h File 12.81 KB 0644
mathdef.h File 890 B 0644
mathinline.h File 26.54 KB 0644
mman-linux.h File 4.69 KB 0644
mman-shared.h File 2.67 KB 0644
mman.h File 1.83 KB 0644
monetary-ldbl.h File 1.02 KB 0644
mqueue.h File 1.22 KB 0644
mqueue2.h File 2.1 KB 0644
msq.h File 2.55 KB 0644
netdb.h File 1.23 KB 0644
param.h File 1.4 KB 0644
poll.h File 2.03 KB 0644
poll2.h File 2.87 KB 0644
posix1_lim.h File 4.81 KB 0644
posix2_lim.h File 2.8 KB 0644
posix_opt.h File 5.57 KB 0644
printf-ldbl.h File 991 B 0644
pthreadtypes-arch.h File 3.21 KB 0644
pthreadtypes.h File 3 KB 0644
ptrace-shared.h File 2.83 KB 0644
resource.h File 6.15 KB 0644
sched.h File 3.72 KB 0644
select.h File 2.06 KB 0644
select2.h File 1.4 KB 0644
sem.h File 2.53 KB 0644
semaphore.h File 1.21 KB 0644
setjmp.h File 1.26 KB 0644
setjmp2.h File 1.66 KB 0644
shm.h File 3.48 KB 0644
sigaction.h File 2.8 KB 0644
sigcontext.h File 4.16 KB 0644
sigevent-consts.h File 1.44 KB 0644
siginfo-arch.h File 729 B 0644
siginfo-consts-arch.h File 204 B 0644
siginfo-consts.h File 5.83 KB 0644
signalfd.h File 1.04 KB 0644
signum-generic.h File 4.24 KB 0644
signum.h File 1.59 KB 0644
sigstack.h File 1.14 KB 0644
sigthread.h File 1.65 KB 0644
sockaddr.h File 1.48 KB 0644
socket.h File 13.99 KB 0644
socket2.h File 2.95 KB 0644
socket_type.h File 2.16 KB 0644
ss_flags.h File 1.16 KB 0644
stab.def File 8.83 KB 0644
stat.h File 7.44 KB 0644
statfs.h File 1.87 KB 0644
statvfs.h File 3.34 KB 0644
stdint-intn.h File 1.01 KB 0644
stdint-uintn.h File 1.02 KB 0644
stdio-ldbl.h File 2.94 KB 0644
stdio.h File 5.36 KB 0644
stdio2.h File 12.25 KB 0644
stdio_lim.h File 1.18 KB 0644
stdlib-bsearch.h File 1.34 KB 0644
stdlib-float.h File 1.09 KB 0644
stdlib-ldbl.h File 1.34 KB 0644
stdlib.h File 5.53 KB 0644
string_fortified.h File 4.21 KB 0644
strings_fortified.h File 1.18 KB 0644
stropts.h File 8.25 KB 0644
sys_errlist.h File 1.19 KB 0644
syscall.h File 39.59 KB 0644
sysctl.h File 898 B 0644
syslog-ldbl.h File 1.18 KB 0644
syslog-path.h File 1.04 KB 0644
syslog.h File 1.64 KB 0644
sysmacros.h File 2.88 KB 0644
termios.h File 5.24 KB 0644
thread-shared-types.h File 6.56 KB 0644
time.h File 2.93 KB 0644
timerfd.h File 1.08 KB 0644
timex.h File 4.49 KB 0644
types.h File 7.8 KB 0644
typesizes.h File 3.32 KB 0644
uintn-identity.h File 1.5 KB 0644
uio-ext.h File 1.88 KB 0644
uio_lim.h File 1.35 KB 0644
unistd.h File 13 KB 0644
ustat.h File 1.06 KB 0644
utmp.h File 3.96 KB 0644
utmpx.h File 3.38 KB 0644
utsname.h File 1.18 KB 0644
waitflags.h File 2.17 KB 0644
waitstatus.h File 2.23 KB 0644
wchar-ldbl.h File 2.37 KB 0644
wchar.h File 1.86 KB 0644
wchar2.h File 20.02 KB 0644
wctype-wchar.h File 6.15 KB 0644
wordsize.h File 442 B 0644
xopen_lim.h File 3.77 KB 0644
xtitypes.h File 1.19 KB 0644