p!ranha?
Server IP : 103.169.32.36  /  Your IP : 216.73.217.13
Web Server : Apache
System : Linux web.dpmptsp 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 5.6.40
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/include/

Upload File :
Curr3nt_D!r [ Writeable ] D0cum3nt_r0Ot [ Writeable ]

 
Command :
Current File : /usr/include//search.h
/* Declarations for System V style searching functions.
   Copyright (C) 1995-1999, 2000, 2012 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 _SEARCH_H
#define	_SEARCH_H 1

#include <features.h>

#define __need_size_t
#include <stddef.h>

__BEGIN_DECLS

#if defined __USE_SVID || defined __USE_XOPEN_EXTENDED
/* Prototype structure for a linked-list data structure.
   This is the type used by the `insque' and `remque' functions.  */

# ifdef __USE_GNU
struct qelem
  {
    struct qelem *q_forw;
    struct qelem *q_back;
    char q_data[1];
  };
# endif


/* Insert ELEM into a doubly-linked list, after PREV.  */
extern void insque (void *__elem, void *__prev) __THROW;

/* Unlink ELEM from the doubly-linked list that it is in.  */
extern void remque (void *__elem) __THROW;
#endif


/* For use with hsearch(3).  */
#ifndef __COMPAR_FN_T
# define __COMPAR_FN_T
typedef int (*__compar_fn_t) (const void *, const void *);

# ifdef	__USE_GNU
typedef __compar_fn_t comparison_fn_t;
# endif
#endif

/* Action which shall be performed in the call the hsearch.  */
typedef enum
  {
    FIND,
    ENTER
  }
ACTION;

typedef struct entry
  {
    char *key;
    void *data;
  }
ENTRY;

/* Opaque type for internal use.  */
struct _ENTRY;

/* Family of hash table handling functions.  The functions also
   have reentrant counterparts ending with _r.  The non-reentrant
   functions all work on a signle internal hashing table.  */

/* Search for entry matching ITEM.key in internal hash table.  If
   ACTION is `FIND' return found entry or signal error by returning
   NULL.  If ACTION is `ENTER' replace existing data (if any) with
   ITEM.data.  */
extern ENTRY *hsearch (ENTRY __item, ACTION __action) __THROW;

/* Create a new hashing table which will at most contain NEL elements.  */
extern int hcreate (size_t __nel) __THROW;

/* Destroy current internal hashing table.  */
extern void hdestroy (void) __THROW;

#ifdef __USE_GNU
/* Data type for reentrant functions.  */
struct hsearch_data
  {
    struct _ENTRY *table;
    unsigned int size;
    unsigned int filled;
  };

/* Reentrant versions which can handle multiple hashing tables at the
   same time.  */
extern int hsearch_r (ENTRY __item, ACTION __action, ENTRY **__retval,
		      struct hsearch_data *__htab) __THROW;
extern int hcreate_r (size_t __nel, struct hsearch_data *__htab) __THROW;
extern void hdestroy_r (struct hsearch_data *__htab) __THROW;
#endif


/* The tsearch routines are very interesting. They make many
   assumptions about the compiler.  It assumes that the first field
   in node must be the "key" field, which points to the datum.
   Everything depends on that.  */
/* For tsearch */
typedef enum
{
  preorder,
  postorder,
  endorder,
  leaf
}
VISIT;

/* Search for an entry matching the given KEY in the tree pointed to
   by *ROOTP and insert a new element if not found.  */
extern void *tsearch (const void *__key, void **__rootp,
		      __compar_fn_t __compar);

/* Search for an entry matching the given KEY in the tree pointed to
   by *ROOTP.  If no matching entry is available return NULL.  */
extern void *tfind (const void *__key, void *const *__rootp,
		    __compar_fn_t __compar);

/* Remove the element matching KEY from the tree pointed to by *ROOTP.  */
extern void *tdelete (const void *__restrict __key,
		      void **__restrict __rootp,
		      __compar_fn_t __compar);

#ifndef __ACTION_FN_T
# define __ACTION_FN_T
typedef void (*__action_fn_t) (const void *__nodep, VISIT __value,
			       int __level);
#endif

/* Walk through the whole tree and call the ACTION callback for every node
   or leaf.  */
extern void twalk (const void *__root, __action_fn_t __action);

#ifdef __USE_GNU
/* Callback type for function to free a tree node.  If the keys are atomic
   data this function should do nothing.  */
typedef void (*__free_fn_t) (void *__nodep);

/* Destroy the whole tree, call FREEFCT for each node or leaf.  */
extern void tdestroy (void *__root, __free_fn_t __freefct);
#endif


/* Perform linear search for KEY by comparing by COMPAR in an array
   [BASE,BASE+NMEMB*SIZE).  */
extern void *lfind (const void *__key, const void *__base,
		    size_t *__nmemb, size_t __size, __compar_fn_t __compar);

/* Perform linear search for KEY by comparing by COMPAR function in
   array [BASE,BASE+NMEMB*SIZE) and insert entry if not found.  */
extern void *lsearch (const void *__key, void *__base,
		      size_t *__nmemb, size_t __size, __compar_fn_t __compar);

__END_DECLS

#endif /* search.h */
N4m3
5!z3
L45t M0d!f!3d
0wn3r / Gr0up
P3Rm!55!0n5
0pt!0n5
..
--
December 20 2023 04:35:41
0 / 0
0755
arpa
--
September 29 2025 07:00:19
0 / 0
0755
asm
--
September 29 2025 07:00:07
0 / 0
0755
asm-generic
--
September 29 2025 07:00:07
0 / 0
0755
bits
--
September 29 2025 07:00:19
0 / 0
0755
drm
--
September 29 2025 07:00:07
0 / 0
0755
gnu
--
September 29 2025 07:00:44
0 / 0
0755
linux
--
September 29 2025 07:00:08
0 / 0
0755
misc
--
September 29 2025 07:00:08
0 / 0
0755
mtd
--
September 29 2025 07:00:08
0 / 0
0755
net
--
September 29 2025 07:00:19
0 / 0
0755
netash
--
September 29 2025 07:00:19
0 / 0
0755
netatalk
--
September 29 2025 07:00:19
0 / 0
0755
netax25
--
September 29 2025 07:00:19
0 / 0
0755
neteconet
--
September 29 2025 07:00:19
0 / 0
0755
netinet
--
September 29 2025 07:00:19
0 / 0
0755
netipx
--
September 29 2025 07:00:19
0 / 0
0755
netiucv
--
September 29 2025 07:00:19
0 / 0
0755
netpacket
--
September 29 2025 07:00:19
0 / 0
0755
netrom
--
September 29 2025 07:00:19
0 / 0
0755
netrose
--
September 29 2025 07:00:19
0 / 0
0755
nfs
--
September 29 2025 07:00:19
0 / 0
0755
protocols
--
September 29 2025 07:00:19
0 / 0
0755
python2.7
--
December 20 2023 04:52:57
0 / 0
0755
rdma
--
September 29 2025 07:00:08
0 / 0
0755
rpc
--
September 29 2025 07:00:19
0 / 0
0755
rpcsvc
--
September 29 2025 07:00:19
0 / 0
0755
scsi
--
September 29 2025 07:00:19
0 / 0
0755
sound
--
September 29 2025 07:00:09
0 / 0
0755
sys
--
September 29 2025 07:00:20
0 / 0
0755
uapi
--
June 04 2024 14:55:03
0 / 0
0755
video
--
September 29 2025 07:00:09
0 / 0
0755
xen
--
September 29 2025 07:00:09
0 / 0
0755
_G_config.h
1.257 KB
June 04 2024 14:43:09
0 / 0
0644
a.out.h
4.249 KB
June 04 2024 14:43:12
0 / 0
0644
aio.h
7.271 KB
June 04 2024 14:43:45
0 / 0
0644
aliases.h
2.002 KB
June 04 2024 14:43:47
0 / 0
0644
alloca.h
1.193 KB
June 04 2024 14:43:08
0 / 0
0644
ar.h
1.685 KB
June 04 2024 14:43:12
0 / 0
0644
argp.h
24.754 KB
June 04 2024 14:43:43
0 / 0
0644
argz.h
6.965 KB
June 04 2024 14:43:10
0 / 0
0644
assert.h
3.524 KB
June 04 2024 14:43:06
0 / 0
0644
byteswap.h
1.406 KB
June 04 2024 14:43:10
0 / 0
0644
complex.h
3.617 KB
June 04 2024 14:43:07
0 / 0
0644
cpio.h
2.215 KB
June 04 2024 14:43:11
0 / 0
0644
cpufreq.h
5.799 KB
June 04 2024 14:55:10
0 / 0
0644
crypt.h
2.217 KB
June 04 2024 14:43:43
0 / 0
0644
ctype.h
11.523 KB
June 04 2024 14:43:06
0 / 0
0644
dirent.h
12.339 KB
June 04 2024 14:43:10
0 / 0
0644
dlfcn.h
6.875 KB
June 04 2024 14:43:09
0 / 0
0644
elf.h
141.013 KB
June 04 2024 14:43:49
0 / 0
0644
endian.h
2.95 KB
June 04 2024 14:43:10
0 / 0
0644
envz.h
2.819 KB
June 04 2024 14:43:10
0 / 0
0644
err.h
2.183 KB
June 04 2024 14:43:12
0 / 0
0644
errno.h
2.329 KB
June 04 2024 14:43:08
0 / 0
0644
error.h
2.011 KB
June 04 2024 14:43:12
0 / 0
0644
execinfo.h
1.505 KB
June 04 2024 14:43:45
0 / 0
0644
fcntl.h
9.888 KB
June 04 2024 14:43:11
0 / 0
0644
features.h
12.873 KB
June 04 2024 14:43:00
0 / 0
0644
fenv.h
4.495 KB
June 04 2024 14:43:07
0 / 0
0644
fmtmsg.h
3.182 KB
June 04 2024 14:43:08
0 / 0
0644
fnmatch.h
2.267 KB
June 04 2024 14:43:11
0 / 0
0644
fpu_control.h
3.499 KB
June 04 2024 14:43:07
0 / 0
0644
fstab.h
3.038 KB
June 04 2024 14:43:12
0 / 0
0644
fts.h
5.166 KB
June 04 2024 14:43:11
0 / 0
0644
ftw.h
5.146 KB
June 04 2024 14:43:11
0 / 0
0644
gconv.h
5.159 KB
June 04 2024 14:43:00
0 / 0
0644
getopt.h
6.525 KB
June 04 2024 14:43:11
0 / 0
0644
glob.h
6.513 KB
June 04 2024 14:43:11
0 / 0
0644
gnu-versions.h
2.294 KB
June 04 2024 14:43:00
0 / 0
0644
grp.h
6.755 KB
June 04 2024 14:43:11
0 / 0
0644
gshadow.h
4.434 KB
June 04 2024 14:43:42
0 / 0
0644
iconv.h
1.831 KB
June 04 2024 14:43:00
0 / 0
0644
ieee754.h
4.808 KB
June 04 2024 14:43:07
0 / 0
0644
ifaddrs.h
2.769 KB
June 04 2024 14:43:47
0 / 0
0644
inttypes.h
11.606 KB
June 04 2024 14:43:08
0 / 0
0644
langinfo.h
15.566 KB
June 04 2024 14:43:01
0 / 0
0644
lastlog.h
0.123 KB
June 04 2024 14:43:49
0 / 0
0644
libgen.h
1.365 KB
June 04 2024 14:43:12
0 / 0
0644
libintl.h
4.489 KB
June 04 2024 14:43:06
0 / 0
0644
libio.h
16.871 KB
June 04 2024 14:43:09
0 / 0
0644
limits.h
4.423 KB
June 04 2024 14:43:00
0 / 0
0644
link.h
6.986 KB
June 04 2024 14:43:49
0 / 0
0644
locale.h
7.782 KB
June 04 2024 14:43:01
0 / 0
0644
malloc.h
6.437 KB
June 04 2024 14:43:09
0 / 0
0644
math.h
15.7 KB
June 04 2024 14:43:07
0 / 0
0644
mcheck.h
2.397 KB
June 04 2024 14:43:09
0 / 0
0644
memory.h
0.939 KB
June 04 2024 14:43:10
0 / 0
0644
mntent.h
3.296 KB
June 04 2024 14:43:12
0 / 0
0644
monetary.h
1.728 KB
June 04 2024 14:43:08
0 / 0
0644
mqueue.h
3.702 KB
June 04 2024 14:43:45
0 / 0
0644
netdb.h
27.456 KB
June 04 2024 14:43:44
0 / 0
0644
nl_types.h
1.73 KB
June 04 2024 14:43:06
0 / 0
0644
nss.h
1.853 KB
June 04 2024 14:43:45
0 / 0
0644
obstack.h
18.842 KB
June 04 2024 14:43:09
0 / 0
0644
paths.h
2.907 KB
June 04 2024 14:43:12
0 / 0
0644
poll.h
0.021 KB
June 04 2024 14:43:11
0 / 0
0644
printf.h
6.563 KB
June 04 2024 14:43:08
0 / 0
0644
pthread.h
39.952 KB
June 04 2024 14:43:44
0 / 0
0644
pty.h
1.507 KB
June 04 2024 14:43:49
0 / 0
0644
pwd.h
5.873 KB
June 04 2024 14:43:11
0 / 0
0644
re_comp.h
0.935 KB
June 04 2024 14:43:11
0 / 0
0644
regex.h
21.578 KB
June 04 2024 14:43:11
0 / 0
0644
regexp.h
6.887 KB
June 04 2024 14:43:12
0 / 0
0644
resolv.h
14.673 KB
June 04 2024 14:43:44
0 / 0
0644
sched.h
4.553 KB
June 04 2024 14:43:11
0 / 0
0644
search.h
5.112 KB
June 04 2024 14:43:12
0 / 0
0644
semaphore.h
2.358 KB
June 04 2024 14:43:44
0 / 0
0644
setjmp.h
3.967 KB
June 04 2024 14:43:08
0 / 0
0644
sgtty.h
1.331 KB
June 04 2024 14:43:12
0 / 0
0644
shadow.h
5.096 KB
June 04 2024 14:43:42
0 / 0
0644
signal.h
13.301 KB
June 04 2024 14:43:08
0 / 0
0644
spawn.h
6.53 KB
June 04 2024 14:43:11
0 / 0
0644
stab.h
0.258 KB
June 04 2024 14:43:12
0 / 0
0644
stdc-predef.h
1.591 KB
June 04 2024 14:43:00
0 / 0
0644
stdint.h
7.944 KB
June 04 2024 14:43:08
0 / 0
0644
stdio.h
30.899 KB
June 04 2024 14:43:09
0 / 0
0644
stdio_ext.h
2.74 KB
June 04 2024 14:43:08
0 / 0
0644
stdlib.h
33.232 KB
June 04 2024 14:43:08
0 / 0
0644
string.h
21.75 KB
June 04 2024 14:43:10
0 / 0
0644
strings.h
4.546 KB
June 04 2024 14:43:10
0 / 0
0644
syscall.h
0.024 KB
June 04 2024 14:43:12
0 / 0
0644
sysexits.h
5.109 KB
June 04 2024 14:43:12
0 / 0
0644
syslog.h
0.023 KB
June 04 2024 14:43:12
0 / 0
0644
tar.h
3.673 KB
June 04 2024 14:43:11
0 / 0
0644
termio.h
0.209 KB
June 04 2024 14:43:11
0 / 0
0644
termios.h
3.521 KB
June 04 2024 14:43:11
0 / 0
0644
tgmath.h
18.108 KB
June 04 2024 14:43:07
0 / 0
0644
thread_db.h
15.649 KB
June 04 2024 14:43:46
0 / 0
0644
time.h
13.402 KB
June 04 2024 14:43:10
0 / 0
0644
ttyent.h
2.436 KB
June 04 2024 14:43:12
0 / 0
0644
uchar.h
2.425 KB
June 04 2024 14:43:10
0 / 0
0644
ucontext.h
1.916 KB
June 04 2024 14:43:08
0 / 0
0644
ulimit.h
1.553 KB
June 04 2024 14:43:12
0 / 0
0644
unistd.h
41.777 KB
June 04 2024 14:43:11
0 / 0
0644
ustat.h
0.022 KB
June 04 2024 14:43:12
0 / 0
0644
utime.h
1.495 KB
June 04 2024 14:43:11
0 / 0
0644
utmp.h
3.158 KB
June 04 2024 14:43:49
0 / 0
0644
utmpx.h
4.021 KB
June 04 2024 14:43:49
0 / 0
0644
values.h
1.916 KB
June 04 2024 14:43:00
0 / 0
0644
wait.h
0.021 KB
June 04 2024 14:43:11
0 / 0
0644
wchar.h
31.366 KB
June 04 2024 14:43:10
0 / 0
0644
wctype.h
10.894 KB
June 04 2024 14:43:13
0 / 0
0644
wordexp.h
2.47 KB
June 04 2024 14:43:11
0 / 0
0644
xlocale.h
1.664 KB
June 04 2024 14:43:01
0 / 0
0644