Orcania
Potluck with different functions for different purposes that can be shared among C programs
Data Structures | Typedefs | Functions
orcania.h File Reference

Orcania library. More...

#include "orcania-cfg.h"
#include <stdio.h>
#include <stdlib.h>

Go to the source code of this file.

Data Structures

struct  _o_datum
 
struct  _pointer_list
 

Typedefs

typedef void *(* o_malloc_t) (size_t)
 
typedef void *(* o_realloc_t) (void *, size_t)
 
typedef void(* o_free_t) (void *)
 

Functions

char * str_replace (const char *source, const char *str_old, const char *str_new)
 
char * o_strdup (const char *source)
 
char * o_strndup (const char *source, size_t len)
 
int o_strcmp (const char *p1, const char *p2)
 
int o_strncmp (const char *p1, const char *p2, size_t n)
 
char * o_strcpy (char *p1, const char *p2)
 
char * o_strncpy (char *p1, const char *p2, size_t n)
 
int o_strcasecmp (const char *p1, const char *p2)
 
int o_strncasecmp (const char *p1, const char *p2, size_t n)
 
char * o_strstr (const char *haystack, const char *needle)
 
char * o_strnstr (const char *haystack, const char *needle, size_t len)
 
char * o_strcasestr (const char *haystack, const char *needle)
 
char * o_strchr (const char *haystack, int c)
 
const char * o_strnchr (const char *haystack, size_t len, char c)
 
char * o_strrchr (const char *haystack, int c)
 
const char * o_strrnchr (const char *haystack, size_t len, char c)
 
int o_strnullempty (const char *s)
 
size_t o_strlen (const char *s)
 
const char * trimwhitespace (char *str)
 
char * trimcharacter (char *str, char to_remove)
 
char * msprintf (const char *message,...)
 
char * mstrcatf (char *source, const char *message,...)
 
size_t split_string (const char *string, const char *separator, char ***return_array)
 
void free_string_array (char **array)
 
size_t string_array_size (char **array)
 
int string_array_has_value (const char **array, const char *needle)
 
int string_array_has_value_case (const char **array, const char *needle)
 
int string_array_has_value_n (const char **array, const char *needle, size_t len)
 
int string_array_has_value_ncase (const char **array, const char *needle, size_t len)
 
int string_array_has_trimmed_value (const char **array, const char *needle)
 
char * string_array_join (const char **array, const char *separator)
 
void pointer_list_init (struct _pointer_list *pointer_list)
 
void pointer_list_clean (struct _pointer_list *pointer_list)
 
void pointer_list_clean_free (struct _pointer_list *pointer_list, void(*free_function)(void *elt))
 
size_t pointer_list_size (struct _pointer_list *pointer_list)
 
int pointer_list_append (struct _pointer_list *pointer_list, void *element)
 
void * pointer_list_get_at (struct _pointer_list *pointer_list, size_t index)
 
int pointer_list_remove_at (struct _pointer_list *pointer_list, size_t index)
 
int pointer_list_remove_at_free (struct _pointer_list *pointer_list, size_t index, void(*free_function)(void *elt))
 
int pointer_list_insert_at (struct _pointer_list *pointer_list, void *element, size_t index)
 
int pointer_list_remove_pointer (struct _pointer_list *pointer_list, void *element)
 
int pointer_list_remove_pointer_free (struct _pointer_list *pointer_list, void *element, void(*free_function)(void *elt))
 
void * o_malloc (size_t size)
 
void * o_realloc (void *ptr, size_t size)
 
void o_free (void *ptr)
 
void o_set_alloc_funcs (o_malloc_t malloc_fn, o_realloc_t realloc_fn, o_free_t free_fn)
 
void o_get_alloc_funcs (o_malloc_t *malloc_fn, o_realloc_t *realloc_fn, o_free_t *free_fn)
 
int o_base64_encode (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64_decode (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64url_encode (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64url_decode (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64url_2_base64 (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64_2_base64url (const unsigned char *src, size_t len, unsigned char *out, size_t *out_len)
 
int o_base64_encode_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 
int o_base64_decode_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 
int o_base64url_encode_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 
int o_base64url_decode_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 
int o_base64url_2_base64_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 
int o_base64_2_base64url_alloc (const unsigned char *src, size_t len, struct _o_datum *dat)
 

Detailed Description

Orcania library.

Different functions for different purposes but that can be shared between other projects

orcania.h: public header file

Copyright 2015-2022 Nicolas Mora mail@.nosp@m.babe.nosp@m.loues.nosp@m.t.or.nosp@m.g

This program 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; version 2.1 of the License.

This 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 GENERAL PUBLIC LICENSE for more details.

You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses/.