Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
R
 ramsize_t
 read
 read+match
 read-utf8
 read_file
 read_iochannel, iochannel_t
 read_ipsocket, ipsocket_t
 readbuffer_utf8scanner, utf8scanner_t
 readers, rwlock_t
 readfrom_ipsocket, ipsocket_t
 readmaxsize_windowconfig
 Readme
 readminsize_windowconfig
 readnext_filereader, filereader_t
 readoob_ipsocket, ipsocket_t
 readpos_windowconfig
 readsize_windowconfig
 readtitle_windowconfig
 readtransparency_windowconfig
 readtype_windowconfig
 ReadWriteLock
 ReadWriteLock Linuximpl
 real_sysuser
 realuser, sysuser_t
 recursivesplay_splaytree
 RedBlacktree-Index
 RedBlacktree-Index impl
 redblacktree_FREE, redblacktree_t
 redblacktree_IMPLEMENT
 redblacktree_INIT, redblacktree_t
 redblacktree_iterator_FREE, redblacktree_iterator_t
 redblacktree_iterator_t
 redblacktree_node_t
 redblacktree_t
 redirecterr_processstdio
 redirectin_processstdio
 redirectout_processstdio
 redirectstdfd_processstdio2
 redirectstdio_processstdio2
 registerfd_iopoll
 release_filereader, filereader_t
 RELEASE_PAGECACHE
 releasecurrent_eglcontext, eglcontext_t
 releasecurrent_gcontext
 releasepage, pagecache_it
 releasepage_pagecache
 releasepage_pagecacheimpl, pagecache_impl_t
 remainingtime_systimer, systimer_t
 remoteaddr_ipsocket, ipsocket_t
 remove_arraysf, arraysf_t
 remove_arraystf, arraystf_t
 remove_dlist, dlist_t
 remove_exthash, exthash_t
 remove_file
 remove_patriciatrie, patriciatrie_t
 remove_redblacktree, redblacktree_t
 remove_splaytree, splaytree_t
 remove_syncqueue
 remove_syncwlist, syncwlist_t
 remove_trie
 remove2_trie, trie_t
 removeafter_slist, slist_t
 removeall_dlist
 removeall_slist
 removedirectory_directory, directory_t
 removeempty_syncwlist, syncwlist_t
 removefile_directory, directory_t
 removefirst_dlist, dlist_t
 removefirst_queue, queue_t
 removefirst_slist, slist_t
 removefirst_syncqueue
 removelast_dlist, dlist_t
 removelast_queue, queue_t
 removelast_syncqueue
 removenodes_exthash, exthash_t
 removenodes_patriciatrie, patriciatrie_t
 removenodes_redblacktree, redblacktree_t
 removenodes_splaytree, splaytree_t
 removeobject_x11display, x11display_t
 removetrailingzero_bigint, bigint_t
 replacechild_suffixtree
 replacenode_dlist, dlist_t
 replaceobject_x11display, x11display_t
 report, unittest_t
 reset_locale
 reset_locale implementation
 resetmsg_locale
 resetthreadid_threadcontext, threadcontext_t
 resize, memblock_t
 resize_cstring, cstring_t
 RESIZE_ERR_MM
 RESIZE_MM
 resize_window
 resize_x11window, x11window_t
 resizelast_queue, queue_t
 resolution_sysclock, sysclock_t
 Resourceusage
 Resourceusage impl
 resourceusage_FREE, resourceusage_t
 resourceusage_t
 resume_thread, thread_t
 retcode_syncrun
 returncode
 returncode_thread
 Returning Errors
 reversebits_int
 ri
 right
 root
 rootidxshift, arraystf_t
 run
 Run-Unit-Test
 Run-Unit-Test impl
 run_linuxsplice_speedtest
 run_madvise_speedtest
 run_unittest, unittest_t
 run2queue_entry_t
 runall_syncrun, syncrun_t
 running, syncrun_t
 runqueue_entry_t
 rwlock_FREE, rwlock_t
 rwlock_INIT, rwlock_t
 rwlock_t
typedef uint64_t ramsize_t
Ramsize could be bigger than size_t to match 32 bit machines with more than 4GTB of ram.
Implements file_t.read_file.
int read_file(file_t fileobj,
size_t size,
/*out*/void *buffer/*[size]*/,
size_t *bytes_read)
Reads size bytes from file referenced by fileobj into buffer.
int read_iochannel(iochannel_t ioc,
size_t size,
/*out*/void *buffer/*[size]*/,
/*out*/size_t *bytes_read)
Reads size bytes from the data stream referenced by ioc into buffer.
int read_ipsocket(ipsocket_t *ipsock,
size_t maxdata_len,
/*out*/uint8_t data[maxdata_len],
/*out*/size_t *bytes_read)
Reads bytes from read queue at max maxdata_len bytes.
int readbuffer_utf8scanner(utf8scanner_t *scan,
struct filereader_t *frd)
Acquires the next buffer from filereader_t if isnext_utf8scanner returns false.
struct { struct slist_node_t * last ; } readers
Points to last entry in list of waiting readers.
int readfrom_ipsocket(ipsocket_t *ipsock,
struct ipaddr_t *remoteaddr,
size_t maxdata_len,
/*out*/uint8_t data[maxdata_len],
/*out*/size_t *bytes_read)
Same as read_ipsocket but for unconnected (UDP) sockets.
#define readmaxsize_windowconfig(
   winconf,
   attrindex,
   width,
   height
) readsize_windowconfig(winconf, attrindex, width, height)
Implements windowconfig_t.readmaxsize_windowconfig.
void readmaxsize_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex,
/*out*/uint32_t *width,
/*out*/uint32_t *height)
Reads a maxsize attribute value at attrindex in array winconf.
Content of Readme file of js-projekt.
#define readminsize_windowconfig(
   winconf,
   attrindex,
   width,
   height
) readsize_windowconfig(winconf, attrindex, width, height)
Implements windowconfig_t.readminsize_windowconfig.
void readminsize_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex,
/*out*/uint32_t *width,
/*out*/uint32_t *height)
Reads a minsize attribute value at attrindex in array winconf.
int readnext_filereader(filereader_t *frd,
/*out*/struct stringstream_t *buffer)
Returns buffer containing the next block of input data.
int readoob_ipsocket(ipsocket_t *ipsock,
size_t maxdata_len,
/*out*/uint8_t data[maxdata_len],
/*out*/size_t *bytes_read,
/*out*/size_t *oob_offset)
Same as read_ipsocket excepts returns additional OOB index.
#define readpos_windowconfig(
   winconf,
   attrindex,
   x,
   y
) { *(x) = winconf[(*(attrindex))++].i32; *(y) = winconf[(*(attrindex))++].i32; }
Implements windowconfig_t.readpos_windowconfig.
void readpos_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex,
/*out*/int32_t *x,
/*out*/int32_t *y)
Reads a position attribute value at attrindex in array winconf.
#define readsize_windowconfig(
   winconf,
   attrindex,
   width,
   height
) { *(width) = winconf[(*(attrindex))++].u16; *(height) = winconf[(*(attrindex))++].u16; }
Implements windowconfig_t.readsize_windowconfig.
void readsize_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex,
/*out*/uint32_t *width,
/*out*/uint32_t *height)
Reads a size attribute value at attrindex in array winconf.
#define readtitle_windowconfig(winconf,
attrindex) (winconf[(*(attrindex))++].str)
Implements windowconfig_t.readtitle_windowconfig.
const char * readtitle_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex)
Reads a title attribute value at attrindex in array winconf.
#define readtransparency_windowconfig(winconf,
attrindex) (winconf[(*(attrindex))++].u8)
Implements windowconfig_t.readtransparency_windowconfig.
uint8_t readtransparency_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex)
Reads an alpha value at attrindex in array winconf.
#define readtype_windowconfig(
   winconf,
   attrindex
) ((windowconfig_e) winconf[(*(attrindex))++].i32)
Implements windowconfig_t.readtype_windowconfig.
windowconfig_e readtype_windowconfig(const windowconfig_t *winconf,
uint_fast8_t *attrindex)
Reads the attribute type windowconfig_e at attrindex in array winconf.
Implements a simple many readers and single writer lock for threads of a single process.
Implements ReadWriteLock.
#define real_sysuser(sysusr) ((sysusr)->realuser)
Implement sysuser_t.real_sysuser.
sysuser_id_t real_sysuser(sysuser_t *sysusr)
Returns sysuser_id_t of the user which started the process.
sysuser_id_t realuser
Contains user which started the process.
static splaytree_node_t * recursivesplay_splaytree(splaytree_t *tree,
splaytree_node_t *root,
const void *key,
uint16_t nodeoffset,
typeadapt_t *typeadp)
Searches for a node X with key ‘key’ and makes it the new root of the tree.
Interface to red black tree which allows access to a set of sorted elements in O(log n).
Implement RedBlacktree-Index.
#define redblacktree_FREE redblacktree_INIT(0,
typeadapt_member_FREE)
Static initializer.
#define redblacktree_IMPLEMENT(
   _fsuffix,
   object_t,
   key_t,
   nodename
) typedef redblacktree_iterator_t iteratortype##_fsuffix ; typedef object_t * iteratedtype##_fsuffix ; static inline int initfirst##_fsuffix##iterator(redblacktree_iterator_t * iter, redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline int initlast##_fsuffix##iterator(redblacktree_iterator_t * iter, redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline int free##_fsuffix##iterator(redblacktree_iterator_t * iter) __attribute__ ((always_inline)) ; static inline bool next##_fsuffix##iterator(redblacktree_iterator_t * iter, object_t ** node) __attribute__ ((always_inline)) ; static inline bool prev##_fsuffix##iterator(redblacktree_iterator_t * iter, object_t ** node) __attribute__ ((always_inline)) ; static inline void init##_fsuffix(/*out*/redblacktree_t * tree, const typeadapt_member_t * nodeadp) __attribute__ ((always_inline)) ; static inline int free##_fsuffix(redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline void getinistate##_fsuffix(const redblacktree_t * tree, /*out*/object_t ** root, /*out*/typeadapt_member_t * nodeadp) __attribute__ ((always_inline)) ; static inline bool isempty##_fsuffix(const redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline int find##_fsuffix(redblacktree_t * tree, const key_t key, /*out*/object_t ** found_node) __attribute__ ((always_inline)) ; static inline int insert##_fsuffix(redblacktree_t * tree, object_t * new_node) __attribute__ ((always_inline)) ; static inline int remove##_fsuffix(redblacktree_t * tree, object_t * node) __attribute__ ((always_inline)) ; static inline int removenodes##_fsuffix(redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline int invariant##_fsuffix(redblacktree_t * tree) __attribute__ ((always_inline)) ; static inline redblacktree_node_t * asnode##_fsuffix(object_t * object) { static_assert(&((object_t*)0)->nodename == (redblacktree_node_t*)offsetof(object_t, nodename), "correct type") ; return (redblacktree_node_t *) ((uintptr_t)object + offsetof(object_t, nodename)) ; } static inline object_t * asobject##_fsuffix(redblacktree_node_t * node) { return (object_t *) ((uintptr_t)node - offsetof(object_t, nodename)) ; } static inline object_t * asobjectnull##_fsuffix(redblacktree_node_t * node) { return node ? (object_t *) ((uintptr_t)node - offsetof(object_t, nodename)) : 0 ; } static inline void init##_fsuffix(/*out*/redblacktree_t * tree, const typeadapt_member_t * nodeadp) { init_redblacktree(tree, nodeadp) ; } static inline int free##_fsuffix(redblacktree_t * tree) { return free_redblacktree(tree) ; } static inline void getinistate##_fsuffix(const redblacktree_t * tree, /*out*/object_t ** root, /*out*/typeadapt_member_t * nodeadp) { redblacktree_node_t * rootnode ; getinistate_redblacktree(tree, &rootnode, nodeadp) ; *root = asobjectnull##_fsuffix(rootnode) ; } static inline bool isempty##_fsuffix(const redblacktree_t * tree) { return isempty_redblacktree(tree) ; } static inline int find##_fsuffix(redblacktree_t * tree, const key_t key, /*out*/object_t ** found_node) { int err = find_redblacktree(tree, (void*)key, (redblacktree_node_t**)found_node) ; if (err == 0) *found_node = asobject##_fsuffix(*(redblacktree_node_t**)found_node) ; return err ; } static inline int insert##_fsuffix(redblacktree_t * tree, object_t * new_node) { return insert_redblacktree(tree, asnode##_fsuffix(new_node)) ; } static inline int remove##_fsuffix(redblacktree_t * tree, object_t * node) { int err = remove_redblacktree(tree, asnode##_fsuffix(node)) ; return err ; } static inline int removenodes##_fsuffix(redblacktree_t * tree) { return removenodes_redblacktree(tree) ; } static inline int invariant##_fsuffix(redblacktree_t * tree) { return invariant_redblacktree(tree) ; } static inline int initfirst##_fsuffix##iterator(redblacktree_iterator_t * iter, redblacktree_t * tree) { return initfirst_redblacktreeiterator(iter, tree) ; } static inline int initlast##_fsuffix##iterator(redblacktree_iterator_t * iter, redblacktree_t * tree) { return initlast_redblacktreeiterator(iter, tree) ; } static inline int free##_fsuffix##iterator(redblacktree_iterator_t * iter) { return free_redblacktreeiterator(iter) ; } static inline bool next##_fsuffix##iterator(redblacktree_iterator_t * iter, object_t ** node) { bool isNext = next_redblacktreeiterator(iter, (redblacktree_node_t**)node) ; if (isNext) *node = asobject##_fsuffix(*(redblacktree_node_t**)node) ; return isNext ; } static inline bool prev##_fsuffix##iterator(redblacktree_iterator_t * iter, object_t ** node) { bool isNext = prev_redblacktreeiterator(iter, (redblacktree_node_t**)node) ; if (isNext) *node = asobject##_fsuffix(*(redblacktree_node_t**)node) ; return isNext ; }
Implements redblacktree_t.redblacktree_IMPLEMENT.
void redblacktree_IMPLEMENT(IDNAME _fsuffix,
TYPENAME object_t,
TYPENAME key_t,
IDNAME nodename) ;
Adapts interface of redblacktree_t to nodes of type object_t.
#define redblacktree_INIT(root,
nodeadp) { root, nodeadp }
Static initializer.
#define redblacktree_iterator_FREE { 0 }
Static initializer.
struct redblacktree_iterator_t
Iterates over elements contained in redblacktree_t.
typedef struct lrptree_node_t redblacktree_node_t
Rename lrptree_node_t into redblacktree_node_t.
struct redblacktree_t
Object which carries all information to implement a red black tree data type.
#define redirecterr_processstdio(
   stdfd,
   error_file
) ((void)((stdfd)->std_err = error_file))
Implements process_stdio_t.redirecterr_processstdio.
void redirecterr_processstdio(process_stdio_t *stdfd,
sys_iochannel_t error_file)
Redirects standard error output to given file.
#define redirectin_processstdio(
   stdfd,
   input_file
) ((void)((stdfd)->std_in = input_file))
Implements process_stdio_t.redirectin_processstdio.
void redirectin_processstdio(process_stdio_t *stdfd,
sys_iochannel_t input_file)
Redirects standard input to given file.
#define redirectout_processstdio(
   stdfd,
   output_file
) ((void)((stdfd)->std_out = output_file))
Implements process_stdio_t.redirectout_processstdio.
void redirectout_processstdio(process_stdio_t *stdfd,
sys_iochannel_t output_file)
Redirects standard output to given file.
static int redirectstdfd_processstdio2(const process_stdfd2_t *stdfd2,
int stdfd,
int redirectto_file)
Redirects one standard channel to read/write from/to a file.
static int redirectstdio_processstdio2(const process_stdfd2_t *stdfd2)
Redirects all 3 standard io channels to read/write from/to a file.
int registerfd_iopoll(iopoll_t *iopoll,
sys_iochannel_t fd,
const struct ioevent_t *for_event)
Adds file descriptor to Linux epoll object.
int registerfd_iopoll(iopoll_t *iopoll,
sys_iochannel_t fd,
const struct ioevent_t *for_event)
Registers sys_iochannel_t fd and monitors it for ioevent_t.ioevents.
void release_filereader(filereader_t *frd)
Releases the oldest read buffer.
#define RELEASE_PAGECACHE(
   page
) (releasepage_pagecache(pagecache_maincontext(), (page)))
Releases previously allocated memory page.
int releasecurrent_eglcontext(struct opengl_display_t *egldisp)
Der Verbindung des Threads mit dem aktuellen Kontextes wird aufgehoben.
#define releasecurrent_gcontext(
   disp
) releasecurrent_eglcontext(gl_display(disp))
Implements gcontext_t.releasecurrent_gcontext.
int releasecurrent_gcontext(struct display_t *disp)
Der Verbindung des Threads mit dem aktuellen Kontextes wird aufgehoben.
int (*releasepage) (pagecache_t * pgcache, struct memblock_t * page)
Releases a single memory page.
#define releasepage_pagecache(
   pgcache,
   page
) ((pgcache).iimpl->releasepage((pgcache).object, (page)))
Implements pagecache_t.releasepage_pagecache.
int releasepage_pagecache(const pagecache_t pgcache,
struct memblock_t *page)
Calls pgcache->iimpl->releasepage with pgcache->object as first parameter.
int releasepage_pagecacheimpl(pagecache_impl_t *pgcache,
struct memblock_t *page)
Releases a single memory page.
int remainingtime_systimer(systimer_t timer,
struct timevalue_t *remaining_time)
Returns the remaining time until the timer expires the next time.
int remoteaddr_ipsocket(const ipsocket_t *ipsock,
struct ipaddr_t *remoteaddr)
Returns remote ip address of peer in remoteaddr.
int remove_arraysf(arraysf_t *array,
size_t pos,
/*out*/struct arraysf_node_t **removed_node)
Removes node at position pos.
int remove_arraystf(arraystf_t *array,
size_t size,
const uint8_t keydata[size],
/*out*/struct arraystf_node_t **removed_node)
Removes node with key keydata.
int remove_dlist(dlist_t *list,
struct dlist_node_t *node)
Removes the node from the list.
int remove_exthash(exthash_t *htable,
exthash_node_t *node)
Removes a node from the hash table.
int remove_file(const char *filepath,
struct directory_t *relative_to)
Removes created file from filesystem.
int remove_patriciatrie(patriciatrie_t *tree,
size_t keylength,
const uint8_t searchkey[keylength],
patriciatrie_node_t **removed_node)
Removes a node if its key equals searchkey.
int remove_redblacktree(redblacktree_t *tree,
redblacktree_node_t *node)
Removes a node from the tree.
int remove_splaytree(splaytree_t *tree,
splaytree_node_t *node,
uint16_t nodeoffset,
typeadapt_t *typeadp)
Removes a node from the tree.
#define remove_syncqueue(
   syncqueue,
   elem,
   initmove_elem
) ( __extension__ ({ syncqueue_t * _sq = (syncqueue) ; typeof(elem) _elem = (elem) ; typeof(elem) _lastentry = last_queue( genericcast_queue(_sq), sizeof(*_elem)) ; if (_lastentry && _lastentry != _elem) { (initmove_elem)(_elem, _lastentry) ; } int _err = removelast_queue( genericcast_queue(_sq), sizeof(*_elem)) ; _sq->nrelements -= (_err == 0) ; _err ; }))
Implements syncqueue_t.remove_syncqueue.
int remove_syncqueue(syncqueue_t *syncqueue,
IDNAME *elem,
void (*initmove_elem)(IDNAME * dest, IDNAME * src))
Removes elem of type IDNAME from the queue by overwriting it with the last.
int remove_syncwlist(syncwlist_t *wlist,
struct syncqueue_t *queue,
/*out*/struct syncevent_t *removedevent)
Removes the first node in wlist.
#define remove_trie(
   trie,
   keylen,
   key,
   uservalue
) (remove2_trie((trie), (keylen), (key), (uservalue), true))
Implements trie_t.remove_trie.
int remove_trie(trie_t *trie,
uint16_t keylen,
const uint8_t key[keylen],
/*out*/void **uservalue)
TODO: describe
int remove2_trie(trie_t *trie,
uint16_t keylen,
const uint8_t key[keylen],
/*out*/void **uservalue,
bool islog)
TODO: describe
int removeafter_slist(slist_t *list,
struct slist_node_t *prev_node,
struct slist_node_t **removed_node)
Removes the next node coming after prev_node from the list.
#define removeall_dlist(
   list,
   nodeoffset,
   typeadp
) (free_dlist((list), (nodeoffset), (typeadp)))
Implements dlist_t.removeall_dlist with a call to dlist_t.free_dlist.
int removeall_dlist(dlist_t *list,  
uint16_t nodeoffset,  
struct typeadapt_t *typeadp/*0 = >no free called*/)
Removes all nodes from the list.
#define removeall_slist(list,
nodeoffset,
typeadp) free_slist((list), (nodeoffset), (typeadp))
Implements slist_t.removeall_slist with help of slist_t.free_slist.
int removeall_slist(slist_t *list,  
uint16_t nodeoffset,  
struct typeadapt_t *typeadp/*0 = >no free called*/)
Removes all nodes from the list.
int removedirectory_directory(directory_t *dir/*0 = > current working directory*/,
const char *directory_path  )
Removes the empty directory with directory_path relative to dir.
int removeempty_syncwlist(syncwlist_t *wlist,
struct syncqueue_t *queue)
Removes the last node if its syncevent_t has not waiting thread.
int removefile_directory(directory_t *dir/*0 = > current working directory*/,
const char *file_path  )
Removes the file with file_path relative to dir.
int removefirst_dlist(dlist_t *list,
struct dlist_node_t **removed_node)
Removes the first node from the list.
int removefirst_queue(queue_t *queue,
uint16_t nodesize)
Removes nodesize bytes from the first memory page.
int removefirst_slist(slist_t *list,
struct slist_node_t **removed_node)
Removes the first element from list.
#define removefirst_syncqueue(
   syncqueue,
   elemsize
) ( __extension__ ({ syncqueue_t * _sq = (syncqueue) ; int _err = removefirst_queue( genericcast_queue(_sq), elemsize) ; _sq->nrelements -= (_err == 0) ; _err ; }))
Implements syncqueue_t.removefirst_syncqueue.
int removefirst_syncqueue(syncqueue_t *syncqueue,
uint16_t elemsize)
Removes an element from the queue by freeing syncqueue memory.
int removelast_dlist(dlist_t *list,
struct dlist_node_t **removed_node)
Removes the last node from the list.
int removelast_queue(queue_t *queue,
uint16_t nodesize)
Removes nodesize bytes from the last memory page.
#define removelast_syncqueue(
   syncqueue,
   elemsize
) ( __extension__ ({ syncqueue_t * _sq = (syncqueue) ; int _err = removelast_queue( genericcast_queue(_sq), elemsize) ; _sq->nrelements -= (_err == 0) ; _err ; }))
Implements syncqueue_t.removelast_syncqueue.
int removelast_syncqueue(syncqueue_t *syncqueue,
uint16_t elemsize)
Removes an element from the queue by freeing syncqueue memory.
int removenodes_exthash(exthash_t *htable)
Removes all nodes from the hash table.
int removenodes_patriciatrie(patriciatrie_t *tree)
Removes all nodes from the tree.
int removenodes_redblacktree(redblacktree_t *tree)
Removes all nodes from the tree.
int removenodes_splaytree(splaytree_t *tree,
uint16_t nodeoffset,
typeadapt_t *typeadp)
Removes all nodes from the tree.
int removeobject_x11display(x11display_t *x11disp,
uint32_t objectid)
Removes objectid and its associated pointer from the registration.
void removetrailingzero_bigint(bigint_t *big)
Removes all trailing digits which are 0.
static int replacechild_suffixtree(suffixtree_t *tree,
suffixtree_node_t *parent,
suffixtree_node_t * const old_child,
suffixtree_node_t * const new_child)
Replaces old_child of parent with new_child.
void replacenode_dlist(dlist_t *list,
struct dlist_node_t *newnode,
struct dlist_node_t *oldnode)
Removes oldnode from list and replaces it with newnode.
int replaceobject_x11display(x11display_t *x11disp,
struct x11window_t *object,
uint32_t objectid)
Replaces the object for an already registered objectid.
int reset_locale(void)
Sets the locale of all subsystems to default.
Calls C99 conforming function »setlocale«.
int resetmsg_locale(void)
Sets the locale of system messages subsystem to default.
void resetthreadid_threadcontext(void)
Resets the the thread id.
int resize_cstring(cstring_t *cstr,
size_t new_size)
Allocates memory and sets size to new_size.
#define RESIZE_ERR_MM(
   errtimer,
   newsize,
   mblock
) ( __extension__ ({ err = process_testerrortimer(errtimer); if (! err) err = RESIZE_MM(newsize, mblock); err ; }))
Resizes memory block with error.
#define RESIZE_MM(newsize,
mblock) mresize_mm(mm_maincontext(), newsize, mblock)
Resizes memory block.
#define resize_window(win,
width,
height) resize_x11window(os_window(win), width, height)
Implements window_t.resize_window.
int resize_window(window_t *win,
uint32_t width,
uint32_t height)
Changes the size of the window.
int resize_x11window(x11window_t *x11win,
uint32_t width,
uint32_t height)
Changes the size of the window.
int resizelast_queue(queue_t *queue,
/*out*/void **nodeaddr,
uint16_t oldsize,
uint16_t newsize)
Removes oldsize bytes from the last memory page and add newsize bytes.
int resolution_sysclock(sysclock_e clock_type,
/*out*/struct timevalue_t *resolution)
Returns the timer resolution of the underlying clock.
Test that all resource are properly released.
Implements Resourceusage.
#define resourceusage_FREE { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
Static initializer.
struct resourceusage_t
Stores the number of resources currently in use.
void resume_thread(thread_t *threadobj)
The thread which is refered by threadobj is woken up.
#define retcode_syncrun(srun) ((srun)->wakeup.retcode)
Implements syncrun_t.retcode_syncrun.
int retcode_syncrun(const syncrun_t *srun)
Returns return code of an exited syncthread_t.
int returncode
Either the exit number or signal number.
int returncode
Contains the return value of main_task.
#define returncode_thread(
   threadobj
) ( __extension__ ({ volatile const thread_t * _thr ; _thr = (threadobj) ; _thr->returncode ; }))
Implements thread_t.returncode_thread.
int returncode_thread(const thread_t *threadobj)
Returns the returncode of the joined thread.
Every function should return an error as a simple integer value.
Implements int_t.reversebits_int.
unsigned reversebits_int(unsigned i)
Reverses the bits of an integer.
unsigned ri
Index into arraysf_t.root.
unsigned ri
Index into arraystf_t.root.
lrptree_node_t * right
Points to right subtree.
lrtree_node_t * right
Points to right subtree.
patriciatrie_node_t * right
Follow right pointer if testet bit at bit_offset is 1.
union arraysf_unode_t * root[/*toplevelsize*/]
Points to top level nodes.
union arraystf_unode_t * root[/*toplevelsize*/]
Points to top level nodes.
void * root
Points to root memory block.
redblacktree_node_t * root
Points to the root object which has no parent.
splaytree_node_t * root
Points to the root object which has no parent.
uint32_t rootidxshift:8
Nr of bits to shift right before root key is used to access root.
Offers function for calling every registered unit test.
Implements unittest_t.run_unittest.
int run_linuxsplice_speedtest(int argc,
const char **argv)
Compares runtime of simple threaded TCP server write/client read versus server splice/client splice.
int run_madvise_speedtest(int argc,
const char **argv)
Compares speed between reading with mmap and reading with mmap + madvise.
int run_unittest(void *argv)
Calls every registered unittest of the C-kern(el) system.
struct run2queue_entry_t
Contains a single syncthread_t and its corresponding exitevent.
int runall_syncrun(syncrun_t *srun)
Runs all syncthread_t stored in internal queues.
struct { struct syncevent_t * laststarted ; struct syncthread_t * thread ; uint8_t state ; } running
Stores information of the current thread and its running state.
typedef struct runqueue_entry_t runqueue_entry_t
Make runqueue_entry_t an alias for syncthread_t.
#define rwlock_FREE { { 0 } , { 0 }, 0, 0, 0 }
Static initializer.
#define rwlock_INIT { { 0 } , { 0 }, 0, 0, 0 }
Static initializer.
struct rwlock_t
Protect a data structure from access of threads of a single process.
Close