Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
bzip3.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 <process.h>
#include <stdbool.h>
#include "bzlib.h"
#include "md5.h"
#include "win64.h"
#include "bzip3_structs_z.h"
#include "bzip3_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 SHA512_DIGEST_LENGTH   64 /*for your pleasure*/
 
#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 yasmin_charlotte_pereira_dprintf (int amanda_level, char *format,...)
 
__int64 lffilesize_dl (const char *szFileName)
 default function to get the size of files with Unicode support
 
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)
 
int bzip3uncompress_sha512_k_mt_z (char *input, char *output)
 
void pedro_dprintf (int amanda_level, char *format,...)
 
void * sha512_init_k_16 (void)
 
void sha512_update_k_16 (void *ctx, unsigned char *buffer_k, unsigned int len_k)
 
void sha512_final_k_16 (void *ctx, unsigned char *array_digest_64_bytes)
 
int bzip3uncompress_sha512_k (char *input, char *output)
 
uint32_t tuklib_cpucores_z (void)
 Borrowed from XZ compression, will return the number of cpu cores.
 
void mprintf (char *format,...)
 
uint getpor (int max, uint fatia)
 
void dprintf (char *format,...)
 
int __stdcall execute ()
 
int start ()
 
int start2 ()
 
HANDLE lfopen_dl (const char *szFileName, char *pMode)
 
HANDLE lfopen (const char *szFileName, char *pMode)
 
void lfclose (HANDLE hFile)
 
__int64 lfseek (HANDLE hFile, __int64 iDistance, int iMode)
 
__int64 lftell (HANDLE hFile)
 
__int64 lffilesizexcx (const char *szFileName)
 
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 bzip3compress (char *input, char *output, int levelin)
 
int createtempfilename_and_keep_z_fixed (char *path1, char *out_z, char *signature_z)
 
unsigned __stdcall my_thread_function (void *my_argument_z)
 
int bzip3compress_sha512_k (char *input, char *output, int levelin)
 
int bzip3uncompress (char *input, char *output)
 
int __amandacall get_multithread_progress (void)
 

Variables

CRITICAL_SECTION lpCriticalSection_charli_bzip3
 
int64_t max_memory_size_k__p = 0
 
bool is_multi_thread_z = false
 
int intpausexcx
 
int intcancelxcx
 
char temp_path_z []
 
int finishedxcx = 0
 
int intstatusxcx
 
int n_threads_z
 
int bzip3percent = 0
 
int64_t totalbytes_z
 
int64_t bytes__read_thread_z [129]
 
int64_t offset_z__ [129]
 
int64_t size_of_input_file_z__ [129]
 
__INT32_OR_INT64 my_thread_handlexcx [129]
 
char temp_files_z [129][2048]
 
int thread_return_value_z
 
int64_t veja_z = 0
 

Macro Definition Documentation

◆ __amandacall

#define __amandacall   __stdcall

◆ 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 */

◆ SHA512_DIGEST_LENGTH

#define SHA512_DIGEST_LENGTH   64 /*for your pleasure*/

◆ 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

◆ bzip3compress()

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

◆ bzip3compress_sha512_k()

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

◆ bzip3uncompress()

int bzip3uncompress ( char * input,
char * output )

◆ bzip3uncompress_sha512_k()

int bzip3uncompress_sha512_k ( char * input,
char * output )

◆ bzip3uncompress_sha512_k_mt_z()

int bzip3uncompress_sha512_k_mt_z ( char * input,
char * output )

◆ createtempfilename_and_keep_z_fixed()

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

◆ dprintf()

void dprintf ( char * format,
... )

◆ execute()

int __stdcall execute ( )

◆ get_multithread_progress()

int __amandacall get_multithread_progress ( void )

◆ getpor()

uint getpor ( int max,
uint fatia )

◆ lfclose()

void lfclose ( HANDLE hFile)

◆ lffilesize_dl()

__int64 lffilesize_dl ( const char * szFileName)

default function to get the size of files with Unicode support

Parameters
szFileNameutf-8 encoded file
Returns
__int64 the size of the file or 0

◆ lffilesizexcx()

__int64 lffilesizexcx ( const char * szFileName)

◆ lfopen()

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

◆ lfopen_dl()

HANDLE lfopen_dl ( 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 )

◆ mprintf()

void mprintf ( char * format,
... )

◆ my_thread_function()

unsigned __stdcall my_thread_function ( void * my_argument_z)

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

◆ setendofile()

int setendofile ( HANDLE file,
__int64 position )

◆ sha512_final_k_16()

void sha512_final_k_16 ( void * ctx,
unsigned char * array_digest_64_bytes )

◆ sha512_init_k_16()

void * sha512_init_k_16 ( void )

◆ sha512_update_k_16()

void sha512_update_k_16 ( void * ctx,
unsigned char * buffer_k,
unsigned int len_k )

◆ start()

int start ( )

◆ start2()

int start2 ( )

◆ tuklib_cpucores_z()

static uint32_t tuklib_cpucores_z ( void )

Borrowed from XZ compression, will return the number of cpu cores.

Borrowed from XZ compression

◆ 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

int64_t bytes__read_thread_z[129]

◆ bzip3percent

int bzip3percent = 0

◆ finishedxcx

int finishedxcx = 0

◆ intcancelxcx

int intcancelxcx
extern

◆ intpausexcx

int intpausexcx
extern

◆ intstatusxcx

int intstatusxcx
extern

◆ is_multi_thread_z

bool is_multi_thread_z = false

◆ lpCriticalSection_charli_bzip3

CRITICAL_SECTION lpCriticalSection_charli_bzip3

◆ max_memory_size_k__p

int64_t max_memory_size_k__p = 0

◆ my_thread_handlexcx

__INT32_OR_INT64 my_thread_handlexcx[129]

◆ n_threads_z

int n_threads_z
extern

◆ offset_z__

int64_t offset_z__[129]

◆ size_of_input_file_z__

int64_t size_of_input_file_z__[129]

◆ temp_files_z

char temp_files_z[129][2048]

◆ temp_path_z

char temp_path_z[]
extern

◆ thread_return_value_z

int thread_return_value_z

◆ totalbytes_z

int64_t totalbytes_z

◆ veja_z

int64_t veja_z = 0