2004-01-20 21:32:43 +03:00
/*
* Guillaume Cottenceau ( gc @ mandrakesoft . com )
*
* Copyright 2000 MandrakeSoft
*
* This software may be freely redistributed under the terms of the GNU
* public license .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 675 Mass Ave , Cambridge , MA 0213 9 , USA .
*
*/
/*
* Portions from Erik Troan ( ewt @ redhat . com )
*
2018-05-09 15:21:26 +03:00
* Copyright 1996 Red Hat Software
2004-01-20 21:32:43 +03:00
*
*/
# ifndef _TOOLS_H_
# define _TOOLS_H_
# include <stdlib.h>
void process_cmdline ( void ) ;
int get_param ( int i ) ;
void set_param ( int i ) ;
void unset_param ( int i ) ;
int charstar_to_int ( char * s ) ;
2017-12-06 21:18:26 +03:00
/* Returns total memory in Kb */
unsigned long total_memory ( void ) ;
2017-12-07 17:20:20 +03:00
unsigned long get_ramdisk_size ( const char * ramdisk_path ) ;
2017-12-06 21:18:26 +03:00
int ramdisk_possible ( unsigned long ramdisk_size ) ;
2004-01-20 21:32:43 +03:00
char * get_ramdisk_realname ( void ) ;
2017-12-06 21:18:26 +03:00
enum return_type load_ramdisk ( char * , unsigned long size ) ;
enum return_type load_ramdisk_fd ( int ramdisk_fd , unsigned long size ) ;
2004-01-20 21:32:43 +03:00
void * memdup ( void * src , size_t size ) ;
void add_to_env ( char * name , char * value ) ;
void handle_env ( char * * env ) ;
char * * grab_env ( void ) ;
2007-03-03 00:48:18 +03:00
int pass_env ( int ) ;
2004-01-20 21:32:43 +03:00
char * * list_directory ( char * direct ) ;
int string_array_length ( char * * a ) ;
2004-11-30 14:47:57 +03:00
int do_losetup ( char * device , char * target ) ;
2007-03-03 00:48:18 +03:00
char * get_ramdisk_path ( const char * ) ;
2021-03-29 05:05:48 +03:00
char * get_uid_file_path ( const char * , const char * ) ;
2014-04-23 01:38:54 +04:00
enum return_type verify_ramdisk_digest ( const char * filename , const char * sha256_hash ) ;
2010-11-30 22:14:42 +03:00
int splash_verbose ( ) ;
2010-11-22 19:56:35 +03:00
int update_splash ( char * state ) ;
2007-03-03 00:48:18 +03:00
int prepare_progress ( void ) ;
void close_progress ( void ) ;
2009-07-01 12:21:29 +04:00
char * get_param_valued ( char * param_name ) ;
2018-04-22 15:35:10 +03:00
char * get_from_env ( const char * key , const char * const * env ) ;
2004-01-20 21:32:43 +03:00
struct param_elem
{
char * name ;
char * value ;
} ;
# define ptr_begins_static_str(pointer,static_str) (!strncmp(pointer,static_str,sizeof(static_str)-1))
# define streq !strcmp
2010-11-20 19:20:08 +03:00
# define MKDEV(ma,mi) ((ma)<<8 | (mi))
2017-12-06 21:18:26 +03:00
# define BYTES2MB(b) ((unsigned int)(b) / 1024 / 1024)
2004-01-20 21:32:43 +03:00
# endif