Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
lz5.c File Reference
#include <windows.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <errno.h>
#include <fcntl.h>
#include <ctype.h>
#include <math.h>
#include <wctype.h>
#include <wchar.h>
#include <stdarg.h>
#include <stddef.h>
#include <setjmp.h>
#include <locale.h>
#include <signal.h>
#include <limits.h>
#include <float.h>
#include <iso646.h>
#include <assert.h>
#include "stdio_v2.h"
#include "stdio_v3.h"
#include <process.h>
#include "minilzo.h"
#include "win64.h"
#include "lz5_decoder_mt_z.c"

Data Structures

struct  _rspdata
 

Macros

#define uchar   unsigned char
 
#define uint   unsigned int
 
#define ulong   unsigned long
 
#define ushort   unsigned short
 
#define AMANDA__SIZE_ww   ((32767 * 2) + 2)
 
#define AMANDA__SIZE   ((32767 * 6) + 2)
 
#define AMANDA__SIZE_w   (32767)
 
#define __amandacall   __stdcall
 
#define CHUNK   (32768 * 2 * 2) /* it is a good slice of data */
 

Typedefs

typedef struct _rspdata rspdata
 

Functions

void pedro_dprintf2 (int amanda_level, char *format,...)
 pedro_dprintf2 is my variant of my debug function because too much calls to pedro_dprintf these days, I am lazy, sorry....
 
WCHAR * utf8_2_wide_dl (const char *pUTF8)
 my temporary utf8_2_wide_dl function to add full Unicode support and future (when modified) support to long filenames. (jan/2025)
 
WCHAR * amanda_utf8towide_1_v28 (char *pUTF8, WCHAR *ar_temp)
 
wchar_t * remove_permissive_name_m__no_oct (wchar_t *wname)
 
WCHAR * amanda_utf8towide_1_v27_no_oct (char *pUTF8)
 
int lz5uncompress_k_mt_z (char *input, char *output)
 
void pedro_dprintf (int amanda_level, char *format,...)
 
int lz5uncompress_k (char *input, char *output)
 
void mprintf (char *format,...)
 
uint getpor (int max, uint fatia)
 
void dprintf (char *format,...)
 
int start ()
 
int start2 ()
 
HANDLE lfopen (const char *szFileName, char *pMode)
 
void lfclose (HANDLE hFile)
 
__int64 lfseek (HANDLE hFile, __int64 iDistance, int iMode)
 
__int64 lftell (HANDLE hFile)
 
__int64 lffilesize (const char *szFileName)
 simple function to get the size of a utf-8 encoded filename, no support to long filenames yet (above MAX_PATH)
 
unsigned long lfread (void *pBuffer, unsigned long ulCount, HANDLE hFile)
 
unsigned long lfwrite (void *pBuffer, unsigned long ulCount, HANDLE hFile)
 
int setendofile (HANDLE file, __int64 position)
 
int lgetpor__6 (__int64 max, __int64 fatia)
 
int createtempfilename_and_keep_z__6 (char *path1, char *out_z, char *signature_z)
 
unsigned int rsp32 (unsigned int adler, const unsigned char *buf, unsigned int len)
 
uint __amandacall rsp32file_z (char *inputfile)
 
void yasmin_charlotte_pereira_dprintf (int amanda_level, char *format,...)
 
int lz5compress_k (char *input, char *output, int levelin)
 
int lz5uncompress (char *input, char *output)
 
int __amandacall get_multithread_progress__6 (void)
 

Variables

bool is_multi_thread_z__6 = false
 
int64_t max_memory_size_k__p__6
 
int intpause__6
 
int intcancel__6
 
char temp_path_z__6 []
 the temp path to be used...
 
int finished__6 = 0
 
int intstatus__6
 
int n_threads_z__6
 
int lzop2percent = 0
 
CRITICAL_SECTION lpCriticalSection_charli_lz5
 
int64_t totalbytes_z__6
 
int64_t bytes__read_thread_z__6 [129]
 
__INT32_OR_INT64 my_thread_handle__6 [129]
 
char temp_files_z__6 [129][2048]
 
int thread_return_value_z__6
 

Macro Definition Documentation

◆ __amandacall

#define __amandacall   __stdcall

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

◆ 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__SIZE_ww

#define AMANDA__SIZE_ww   ((32767 * 2) + 2)

◆ CHUNK

#define CHUNK   (32768 * 2 * 2) /* it is a good slice of data */

◆ uchar

#define uchar   unsigned char

◆ uint

#define uint   unsigned int

◆ ulong

#define ulong   unsigned long

◆ ushort

#define ushort   unsigned short

Typedef Documentation

◆ rspdata

typedef struct _rspdata rspdata

Function Documentation

◆ amanda_utf8towide_1_v27_no_oct()

WCHAR * amanda_utf8towide_1_v27_no_oct ( 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

◆ amanda_utf8towide_1_v28()

WCHAR * amanda_utf8towide_1_v28 ( char * pUTF8,
WCHAR * ar_temp )

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

◆ createtempfilename_and_keep_z__6()

int createtempfilename_and_keep_z__6 ( char * path1,
char * out_z,
char * signature_z )

◆ dprintf()

void dprintf ( char * format,
... )

◆ get_multithread_progress__6()

int __amandacall get_multithread_progress__6 ( void )

◆ getpor()

uint getpor ( int max,
uint fatia )

◆ lfclose()

void lfclose ( HANDLE hFile)

◆ lffilesize()

__int64 lffilesize ( const char * szFileName)

simple function to get the size of a utf-8 encoded filename, no support to long filenames yet (above MAX_PATH)

to get the file input size, with support to files above 2gb, and unicode support

Parameters
szFileNameutf-8 encoded filename
Returns
__int64
Parameters
szFileNamethe utf-8 encoded input file
Returns
__int64
Parameters
szFileNameutf-8 encoded filename
Returns
__int64

simple function to get the size of a utf-8 encoded filename, no support to long filenames yet (above MAX_PATH)

Parameters
szFileNamethe utf-8 encoded input file
Returns
__int64

◆ lfopen()

HANDLE lfopen ( const char * szFileName,
char * pMode )

◆ lfread()

unsigned long lfread ( void * pBuffer,
unsigned long ulCount,
HANDLE hFile )

◆ lfseek()

__int64 lfseek ( HANDLE hFile,
__int64 iDistance,
int iMode )

◆ lftell()

__int64 lftell ( HANDLE hFile)

◆ lfwrite()

unsigned long lfwrite ( void * pBuffer,
unsigned long ulCount,
HANDLE hFile )

◆ lgetpor__6()

int lgetpor__6 ( __int64 max,
__int64 fatia )

◆ lz5compress_k()

int lz5compress_k ( char * input,
char * output,
int levelin )

◆ lz5uncompress()

int lz5uncompress ( char * input,
char * output )

◆ lz5uncompress_k()

int lz5uncompress_k ( char * input,
char * output )

◆ lz5uncompress_k_mt_z()

int lz5uncompress_k_mt_z ( char * input,
char * output )

◆ mprintf()

void mprintf ( char * format,
... )

◆ pedro_dprintf()

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

◆ pedro_dprintf2()

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

pedro_dprintf2 is my variant of my debug function because too much calls to pedro_dprintf these days, I am lazy, sorry....

em brotli or brotli2

Parameters
amanda_levelif equal or above 0 print the string
formatprintf based format
...

◆ remove_permissive_name_m__no_oct()

wchar_t * remove_permissive_name_m__no_oct ( wchar_t * wname)

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

oi amor...

◆ rsp32()

unsigned int rsp32 ( unsigned int adler,
const unsigned char * buf,
unsigned int len )

◆ rsp32file_z()

uint __amandacall rsp32file_z ( char * inputfile)

◆ setendofile()

int setendofile ( HANDLE file,
__int64 position )

◆ start()

int start ( )

◆ start2()

int start2 ( )

◆ utf8_2_wide_dl()

WCHAR * utf8_2_wide_dl ( const char * pUTF8)

my temporary utf8_2_wide_dl function to add full Unicode support and future (when modified) support to long filenames. (jan/2025)

Parameters
pUTF8
Returns
WCHAR*

◆ yasmin_charlotte_pereira_dprintf()

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

Variable Documentation

◆ bytes__read_thread_z__6

int64_t bytes__read_thread_z__6[129]

◆ finished__6

int finished__6 = 0

◆ intcancel__6

int intcancel__6
extern

◆ intpause__6

int intpause__6
extern

◆ intstatus__6

int intstatus__6
extern

◆ is_multi_thread_z__6

bool is_multi_thread_z__6 = false

◆ lpCriticalSection_charli_lz5

CRITICAL_SECTION lpCriticalSection_charli_lz5

◆ lzop2percent

int lzop2percent = 0

◆ max_memory_size_k__p__6

int64_t max_memory_size_k__p__6
extern

◆ my_thread_handle__6

__INT32_OR_INT64 my_thread_handle__6[129]

◆ n_threads_z__6

int n_threads_z__6
extern

◆ temp_files_z__6

char temp_files_z__6[129][2048]

◆ temp_path_z__6

char temp_path_z__6[]
extern

the temp path to be used...

◆ thread_return_value_z__6

int thread_return_value_z__6

◆ totalbytes_z__6

int64_t totalbytes_z__6