Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
smartape.c File Reference

Macros

#define AMANDA_S_SMART_APE_SIZE   ((100000))
 
#define AMANDA__SIZE   ((32767 * 6) + 2)
 
#define AMANDA__SIZE_w   (32767)
 
#define Z_DEBUG
 

Enumerations

enum  feline_modes { FELINE_MODE_NORMAL , FELINE_MODE_DELETE_ROOT , FELINE_MODE_DELETE_NODE }
 
enum  funny_mode { FELINE_MODE_INCLUDE_ = 1001 , FELINE_MODE_EXCLUDE_ }
 
enum  { MODE_IS_REPLACE__ , MODE_IS_COUNT__ }
 

Functions

WCHAR * amanda_utf8towide_3_ (char *pUTF8)
 
char * valquiria_wide_to_utf8_3_ (WCHAR *pUSC2_maria)
 
wchar_t * permissive_name_m_ (const wchar_t *wname)
 
int feline_read_xml (char *filename_utf8_feline, char *root__________feline, char *node__________feline, char *attribute_____feline, char *out_data______feline)
 
int feline_write_xml (char *filename_utf8_feline, char *root__________feline, char *node__________feline, char *attribute_____feline, char *in_data_______feline_)
 
void pedro_dprintf (int amanda_level, char *format,...)
 
int __fastcall replacestringsensitive2_juliete (char *comando, char *source, char *dest)
 
int feline_read_xml (char *filename_utf8_feline, char *root__________feline, char *node__________feline, __attribute__((unused)) char *attribute_____feline, char *out_data______feline)
 
int feline_write_xml (char *filename_utf8_feline, char *root__________feline, char *node__________feline, __attribute__((unused)) char *attribute_____feline, char *in_data_______feline_)
 
int feline_remove_root_xml (char *filename_utf8_feline, char *root__________feline)
 
int feline_remove_node_xml (char *filename_utf8_feline, char *root__________feline, char *node__________feline)
 
void strncpy_z (char *dest_z, char *src_z, size_t len)
 
char * getyear_my_love (void)
 
__int64 getfilesize_ar_may_fail_amanda_s_smart_ape (char *infile_ar)
 
int __stdcall write_xml_z_amanda_s_smart_ape (char *filename_amanda_s_smart_ape, char *key_name_z, char *data_z)
 
int __stdcall read_xml_z_amanda_s_smart_ape (char *filename_amanda_s_smart_ape, char *key_name_z, char *data_z, int output_len_z)
 
int main (int argc_amanda_s_smart_ape, char **argv_amanda_s_smart_ape)
 

Variables

char copyleft_cirkut []
 

Macro Definition Documentation

◆ AMANDA__SIZE

#define AMANDA__SIZE   ((32767 * 6) + 2)

The maximum size of an utf-8 encoded filename with the max limit of a file in Windows

◆ AMANDA__SIZE_w

#define AMANDA__SIZE_w   (32767)

The maximum size of Unicode characters in a path in Windows, Linux is 1024 characters as far I know

◆ AMANDA_S_SMART_APE_SIZE

#define AMANDA_S_SMART_APE_SIZE   ((100000))

◆ Z_DEBUG

#define Z_DEBUG

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MODE_IS_REPLACE__ 
MODE_IS_COUNT__ 

◆ feline_modes

Enumerator
FELINE_MODE_NORMAL 
FELINE_MODE_DELETE_ROOT 
FELINE_MODE_DELETE_NODE 

◆ funny_mode

enum funny_mode
Enumerator
FELINE_MODE_INCLUDE_ 
FELINE_MODE_EXCLUDE_ 

Function Documentation

◆ amanda_utf8towide_3_()

WCHAR * amanda_utf8towide_3_ ( char * pUTF8)

To convert an utf-8 encoded filename to a wide string (WCHAR *), we . provide two functions that are exactly the same because someone may use it in multi-thread code

Parameters
pUTF8the input utf-8 encoded filename
Returns
the static allocated WCHAR array with the filename as wide string

◆ feline_read_xml() [1/2]

int feline_read_xml ( char * filename_utf8_feline,
char * root__________feline,
char * node__________feline,
__attribute__((unused)) char * attribute_____feline,
char * out_data______feline )

To remove the end of string spaces including \r
and \t Function to get our modified and limited xml implemented file... in 2021

Parameters
filename_utf8_felinethe XML file as utf-8
attribute_____felinethe attibute to get, not implemented...but will in a near future
node__________felinethe node
out_data______felinethe output char * need to have space enough for the data or an memory access error can occur
Returns
0 if no error, 1 if XML file is not valid, 2 if root not found

◆ feline_read_xml() [2/2]

int feline_read_xml ( char * filename_utf8_feline,
char * root__________feline,
char * node__________feline,
char * attribute_____feline,
char * out_data______feline )

Function to get our modified and limited xml implemented file... in 2021

Parameters
filename_utf8_felinethe XML file as utf-8
attribute_____felinethe attibute to get, not implemented...but will in a near future
node__________felinethe node
out_data______felinethe output char * need to have space enough for the data or an memory access error can occur
Returns
0 if no error, 1 if XML file is not valid, 2 if root not found

◆ feline_remove_node_xml()

int feline_remove_node_xml ( char * filename_utf8_feline,
char * root__________feline,
char * node__________feline )

Function to remove a node if you are a clean programmer...

Parameters
filename_utf8_felinethe XML file
root__________felinethe root
node__________felinethe node to get rid from the XML file
Returns
0 if no error, 1 otherwise, as you may expect...

◆ feline_remove_root_xml()

int feline_remove_root_xml ( char * filename_utf8_feline,
char * root__________feline )

Function to remove a node if you need to do it...

Parameters
filename_utf8_felinethe XML file
root__________felinethe root
Returns
0 if no error, 1 otherwise

◆ feline_write_xml() [1/2]

int feline_write_xml ( char * filename_utf8_feline,
char * root__________feline,
char * node__________feline,
__attribute__((unused)) char * attribute_____feline,
char * in_data_______feline_ )

Function to write XML file

Parameters
filename_utf8_felinethe XML file...
root__________felinethe root, if it don´t exist it will be created
node__________felinethe node, if it don´t exist it will be created
attribute_____felinethe attibute, not in use in this version but will in the future

@ in_data_______feline_ the input data to convert and save to the not standard XML file

Returns
0 if no error, 1 if cannot write to the XML file or if the path is invalid

◆ feline_write_xml() [2/2]

int feline_write_xml ( char * filename_utf8_feline,
char * root__________feline,
char * node__________feline,
char * attribute_____feline,
char * in_data_______feline_ )

Function to write XML file

Parameters
filename_utf8_felinethe XML file...
root__________felinethe root, if it don´t exist it will be created
node__________felinethe node, if it don´t exist it will be created
attribute_____felinethe attibute, not in use in this version but will in the future

@ in_data_______feline_ the input data to convert and save to the not standard XML file

Returns
0 if no error, 1 if cannot write to the XML file or if the path is invalid

◆ getfilesize_ar_may_fail_amanda_s_smart_ape()

__int64 getfilesize_ar_may_fail_amanda_s_smart_ape ( char * infile_ar)

To get the file size, filename is utf-8

Parameters
infile_arthe input file
Returns
the size of the file or 0 in case of error or if the file is empty, if you need to know whether the file do exist use ispathfile function

◆ getyear_my_love()

char * getyear_my_love ( void )

◆ main()

int main ( int argc_amanda_s_smart_ape,
char ** argv_amanda_s_smart_ape )

◆ pedro_dprintf()

void pedro_dprintf ( int amanda_level,
char * format,
... )

◆ permissive_name_m_()

wchar_t * permissive_name_m_ ( const wchar_t * wname)

To make the path wide mode aware, stolen from libarchive

15/september/2021 10:14, last visit 16/09/2021 22:36 by bhond..., last visit 21/sep/2021 03:57...

◆ read_xml_z_amanda_s_smart_ape()

int __stdcall read_xml_z_amanda_s_smart_ape ( char * filename_amanda_s_smart_ape,
char * key_name_z,
char * data_z,
int output_len_z )

◆ replacestringsensitive2_juliete()

int __fastcall replacestringsensitive2_juliete ( char * comando,
char * source,
char * dest )

◆ strncpy_z()

void strncpy_z ( char * dest_z,
char * src_z,
size_t len )

My fixed strncpy

◆ valquiria_wide_to_utf8_3_()

char * valquiria_wide_to_utf8_3_ ( WCHAR * pUSC2_maria)

To convert an input wide string to a utf-8 encoded filename on return

Parameters
pUSC2_mariathe wide string to be converted
Returns
it will return the static allocated char * string with the utf-8 encoded filename

◆ write_xml_z_amanda_s_smart_ape()

int __stdcall write_xml_z_amanda_s_smart_ape ( char * filename_amanda_s_smart_ape,
char * key_name_z,
char * data_z )

Variable Documentation

◆ copyleft_cirkut

char copyleft_cirkut[]
Initial value:
=
" /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\r\n"
" * *\r\n"
" * Licensa de Cópia (C) <2021> <Corporação do Trabalho Binário> *\r\n"
" * *\r\n"
" * Este programa é software livre: você pode redistribuir isto e/ou *\r\n"
" * modificar isto sobre os termos do GNU Licensa Geral Pública como 8\r\n"
" * publicado pela Fundação de Software Livre, tanto a versão 3 da *\r\n"
" * Licensa, ou (dependendo da sua opção) qualquer versão posterior. *\r\n"
" * *\r\n"
" * Este programa é distribuído na esperança que isto vai ser útil, *\r\n"
" * mas SEM QUALQUER GARANTIA; sem até mesmo a implicada garantia de *\r\n"
" * COMERCIALIZAÇÃO ou CABIMENTO PARA UM FIM PARTICULAR. Veja a *\r\n"
" * Licensa Geral Pública para mais detalhes. *\r\n"
" * *\n"
" * Você deve ter recebido uma cópia da LICENSA GERAL PUBLICA e a GNU *\r\n"
" * Licensa Pública Menor junto com este programa *\r\n"
" * Se não, veja <http://www.gnu.org/licenses/>. *\r\n"
" * *\r\n"
" * Suporte: https://nomade.sourceforge.io/ *\r\n"
" \r\n"
" * E-mails direto dos felizes programadores: *\r\n"
" * O Ricardinho : arsoftware25@gmail.com ricardo@arsoftware.net.br *\r\n"
" * Little_Amanda: arsoftware10@gmail.com amanda.@arsoftware.net.br *\r\n"
" * *\r\n"
" * contato imediato(para uma resposta muita rápida) WhatsApp *\r\n"
" * (+55)41 9627 1708 - isto está sempre ligado (eu acho...) *\r\n"
" * *\r\n"
" * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * **/\r\n"