utils

utils — Manage some common functions used by all other files.

Synopsis

gboolean            uc_utils_str_is_not_alphanum        (const gchar *str);
void                uc_utils_swap_file_proto_option     (const gboolean begin);
void                uc_utils_clear_container            (GtkContainer *container);
time_t              uc_utils_http_atotm                 (const gchar *time_string);
gchar *             uc_utils_url_reencode_escapes       (const gchar *s);
gboolean            uc_utils_ftp_code_search            (const gchar *buffer,
                                                         const gchar *code,
                                                         const gint len);
gchar *             uc_utils_get_string_from_size       (const gsize size);
gchar *             uc_utils_get_server_from_header_field
                                                        (gchar *field);
void                uc_utils_copy                       (const gchar *src,
                                                         const gchar *dest);
gboolean            uc_utils_get_meta_refresh_location  (UCLinkProperties *prop,
                                                         UCHTMLTag *tag);
gchar *             uc_utils_to_utf8                    (const gchar *data);
void                uc_utils_copy_files                 (const gchar *src,
                                                         const gchar *dest);
void                uc_utils_debug                      (const gchar *format,
                                                         ...);
void                uc_utils_debug_dump_link_properties (const UCLinkProperties *prop);
void                uc_utils_set_userfriendly_treeview_column
                                                        (const GtkTreeView *tv,
                                                         const gint position);
gchar *             uc_utils_get_file_content           (const gchar *path,
                                                         gsize *length);
void                uc_utils_split_email                (const gchar *email,
                                                         gchar **user,
                                                         gchar **domain);
gchar *             uc_utils_get_mx                     (const gchar *domain);
gboolean            uc_utils_get_yesno                  (const gchar *yesno);
gboolean            uc_utils_mx_is_valid                (const gchar *mx);
gchar *             uc_utils_get_ip                     (const gchar *host);
UCEmailStatus       uc_utils_email_is_valid             (const gchar *email,
                                                         const gboolean check_mx);
gchar *             uc_utils_string_cut                 (const gchar *label,
                                                         const gsize size);
gchar *             uc_utils_string_format4display      (const gchar *label,
                                                         const gsize size);
gchar *             uc_utils_replace                    (const gchar *str,
                                                         const gchar *old,
                                                         const gchar *new);
gchar *             uc_utils_replace1                   (gchar *string,
                                                         const gchar c1,
                                                         const char c2);
gchar *             uc_utils_replacelr                  (gchar *string,
                                                         const gchar c);
gchar *             uc_utils_convert_uid2file           (const guint32 uid);
void                uc_utils_get_gnome_proxy_conf       (gchar **host,
                                                         guint *port);
gchar *             uc_utils_clean_tag_link_value       (gchar *value);
gpointer            uc_utils_search_string_next         (gpointer buf,
                                                         const gchar *str,
                                                         const gchar limit_char);
gboolean            uc_utils_memcasecmp                 (const gchar *str1,
                                                         const gchar *str2);
void                uc_utils_rmfiles                    (const gchar *path);
gboolean            uc_utils_mkdirs                     (const gchar *path,
                                                         const gboolean create_all);
void                uc_utils_rmdirs                     (const gchar *path,
                                                         const gboolean delete_all);
guint32             uc_utils_vector_length              (gpointer data);
gchar *             uc_utils_strpbrk_or_eos             (const gchar *str,
                                                         const gchar *accept);
gchar *             uc_utils_strdup_delim               (const gchar *begin,
                                                         const gchar *end);
gboolean            uc_utils_array_is_in                (const gchar *item,
                                                         gpointer array,
                                                         const guint size);
gboolean            uc_utils_test_socket_open           (const guint sock);
gchar *             uc_utils_get_gnome_browser_conf     (void);
gboolean            uc_utils_get_auth_fields            (GladeXML *g,
                                                         GtkWidget *w_auth_user,
                                                         GtkWidget *w_auth_password,
                                                         gchar **auth_user,
                                                         gchar **auth_password,
                                                         gchar **auth_line);
gchar *             uc_utils_build_auth_line            (const gchar *auth_user,
                                                         const gchar *auth_password);

Description

Details

uc_utils_str_is_not_alphanum ()

gboolean            uc_utils_str_is_not_alphanum        (const gchar *str);

str :

Returns :


uc_utils_swap_file_proto_option ()

void                uc_utils_swap_file_proto_option     (const gboolean begin);

begin :


uc_utils_clear_container ()

void                uc_utils_clear_container            (GtkContainer *container);

container :


uc_utils_http_atotm ()

time_t              uc_utils_http_atotm                 (const gchar *time_string);

time_string :

Returns :


uc_utils_url_reencode_escapes ()

gchar *             uc_utils_url_reencode_escapes       (const gchar *s);

s :

Returns :


uc_utils_ftp_code_search ()

gboolean            uc_utils_ftp_code_search            (const gchar *buffer,
                                                         const gchar *code,
                                                         const gint len);

Search for a given FTP code in a buffer.

buffer :

a buffer containing some FTP output stuff.

code :

the FTP code to search for (string format).

len :

length of the given buffer buffer.

Returns :

TRUE if the given FTP code code has been found in buffer.

uc_utils_get_string_from_size ()

gchar *             uc_utils_get_string_from_size       (const gsize size);

Convert a size in string format (with unit indication (KB, MB...)).

size :

size to convert in string

Returns :

a string representation of the given size size.

uc_utils_get_server_from_header_field ()

gchar *             uc_utils_get_server_from_header_field
                                                        (gchar *field);

Extract server name/type from a HTTP header "Server" field.

field :

A string from the "Server" HTTP header field.

Returns :

A string with the HTTP server. A new allocated string.

uc_utils_copy ()

void                uc_utils_copy                       (const gchar *src,
                                                         const gchar *dest);

Copy a file from src to dest.

src :

Source file.

dest :

Destination file.

uc_utils_get_meta_refresh_location ()

gboolean            uc_utils_get_meta_refresh_location  (UCLinkProperties *prop,
                                                         UCHTMLTag *tag);

If the page contain a refresh meta tag with a value of 0, replace the current page URL with it.

prop :

A UCLinkProperties node.

tag :

A UCHTMLTag tag.

Returns :

TRUE if there was a REFRESH META tag.

uc_utils_to_utf8 ()

gchar *             uc_utils_to_utf8                    (const gchar *data);

UTF-8 encode a given string. Adapted from screem "screem_support_charset_convert()" function.

data :

String to proceed.

Returns :

A new allocated UTF-8 encoded string.

uc_utils_copy_files ()

void                uc_utils_copy_files                 (const gchar *src,
                                                         const gchar *dest);

Copy all the file from a given directorie in another.

src :

Source path.

dest :

Destination path.

uc_utils_debug ()

void                uc_utils_debug                      (const gchar *format,
                                                         ...);

Display debug informations.

format :

The message format.

... :

The parameters to insert into the format string.

uc_utils_debug_dump_link_properties ()

void                uc_utils_debug_dump_link_properties (const UCLinkProperties *prop);

Dump the link properties structure to the standard output.

prop :

A UCLinkProperties node.

uc_utils_set_userfriendly_treeview_column ()

void                uc_utils_set_userfriendly_treeview_column
                                                        (const GtkTreeView *tv,
                                                         const gint position);

Set a treeview column sortable and resizable.

tv :

Tree view to work with.

position :

Position of the column to work with.

uc_utils_get_file_content ()

gchar *             uc_utils_get_file_content           (const gchar *path,
                                                         gsize *length);

Open and read a file to return its content.

path :

Path of the file.

length :

Pointer to fill with file length.

Returns :

A new allocated string with the content of a the file. The length argument contain the file length.

uc_utils_split_email ()

void                uc_utils_split_email                (const gchar *email,
                                                         gchar **user,
                                                         gchar **domain);

Fill the two parts of a E-Mail address. user and domain argument are filled with new allocated strings.

email :

E-Mail to work with.

user :

Pointer for the "user" part of the E-Mail.

domain :

Pointer for the "domain" part of the E-Mail.

uc_utils_get_mx ()

gchar *             uc_utils_get_mx                     (const gchar *domain);

Return the prefered MX for a given domain. Function adapted from http://www.sslug.dk/emailarkiv/cprog/1999_10/msg00056.html

domain :

Domain from which returning the corresponding MX.

Returns :

A new allocated string with the corresponding MX.

uc_utils_get_yesno ()

gboolean            uc_utils_get_yesno                  (const gchar *yesno);

Proceed a given string to see if it contains "yes" or "no".

yesno :

A string containing "yes" or "no".

Returns :

TRUE if the given string is "yes".

uc_utils_mx_is_valid ()

gboolean            uc_utils_mx_is_valid                (const gchar *mx);

Check if a given MX is valid or not.

mx :

The MX to check.

Returns :

TRUE if the given MX is alive and listen on port 25.

uc_utils_get_ip ()

gchar *             uc_utils_get_ip                     (const gchar *host);

Return the IP of the given host. if arg is already an IP, return it as is.

host :

Host to work with.

Returns :

A new allocated string with the IP.

uc_utils_email_is_valid ()

UCEmailStatus       uc_utils_email_is_valid             (const gchar *email,
                                                         const gboolean check_mx);

Check E-Mail syntax and MX if required.

email :

E-Mail to check.

check_mx :

TRUE if we also must check the MX.

Returns :

The UCEmailStatus status of the E-Mail. Return codes are: - 0: bad syntax (UC_EMAIL_SYNTAX_BAD) - 1: syntax ok but MX not respond (UC_EMAIL_SYNTAX_MX_BAD) - 2: syntax ok and MX ok (UC_EMAIL_OK)

uc_utils_string_cut ()

gchar *             uc_utils_string_cut                 (const gchar *label,
                                                         const gsize size);

Cut a given string to fit with the given length.

See: uc_utils_string_format4display()

label :

Label to cut.

size :

Size limit.

Returns :

A new allocated string with the cutted label.

uc_utils_string_format4display ()

gchar *             uc_utils_string_format4display      (const gchar *label,
                                                         const gsize size);

format a given string to be displayed in UI.

See: uc_utils_string_cut()

label :

Label to format.

size :

Size limit.

Returns :

A new allocated string with the new formated label.

uc_utils_replace ()

gchar *             uc_utils_replace                    (const gchar *str,
                                                         const gchar *old,
                                                         const gchar *new);

Replace one or more characters in a given string.

See: uc_utils_replace1()

str :

String to work with.

old :

String to replace.

new :

New string to replace old with.

Returns :

A new allocated string.

uc_utils_replace1 ()

gchar *             uc_utils_replace1                   (gchar *string,
                                                         const gchar c1,
                                                         const char c2);

Replace a caracter by another (but do not allocate new memory for the result string).

See: uc_utils_replace()

string :

String to work with.

c1 :

Character to replace.

c2 :

Replacement.

Returns :

The modified string.

uc_utils_replacelr ()

gchar *             uc_utils_replacelr                  (gchar *string,
                                                         const gchar c);

Remove all line return in a given string.

string :

String to work with.

c :

Character for LR replacement.

Returns :

The modified string.

uc_utils_convert_uid2file ()

gchar *             uc_utils_convert_uid2file           (const guint32 uid);

Convert a cache uid to filename.

uid :

The uid of a UCLinkProperties node.

Returns :

The corresponding path. A new allocated string.

uc_utils_get_gnome_proxy_conf ()

void                uc_utils_get_gnome_proxy_conf       (gchar **host,
                                                         guint *port);

Fill given args with the gconf values for the gnome network proxy settings.

host :

A string to fill for the host.

port :

A integer to fill for the port.

uc_utils_clean_tag_link_value ()

gchar *             uc_utils_clean_tag_link_value       (gchar *value);

Clean a link value string.

value :

String to clean.

Returns :

A cleaned value. A new allocated string.

uc_utils_search_string_next ()

gpointer            uc_utils_search_string_next         (gpointer buf,
                                                         const gchar *str,
                                                         const gchar limit_char);

Search for the next char after the searched string.

buf :

A gpointer to the source buffer.

str :

The string to search.

limit_char :

The char to stop if found.

Returns :

If found, retrun a pointer on the next char, else return the original pointer.

uc_utils_memcasecmp ()

gboolean            uc_utils_memcasecmp                 (const gchar *str1,
                                                         const gchar *str2);

Comparison between two strings, based on the length of the second string.

str1 :

First string to compare.

str2 :

Second string to compare.

Returns :

TRUE if the beginning of str1 match with str2.

uc_utils_rmfiles ()

void                uc_utils_rmfiles                    (const gchar *path);

Remove all files in a given directory.

path :

The path in witch deleting files.

uc_utils_mkdirs ()

gboolean            uc_utils_mkdirs                     (const gchar *path,
                                                         const gboolean create_all);

Make given path -- create intermediate paths if they don't exist -- and test if we are authorized to write in.

path :

Path to create.

create_all :

TRUE if we must create intermediar paths (mkdir -p).

Returns :

TRUE if all is ok.

uc_utils_rmdirs ()

void                uc_utils_rmdirs                     (const gchar *path,
                                                         const gboolean delete_all);

Remove a given path -- remove intermediate paths too.

path :

The path to remove.

delete_all :

If TRUE, remove all intermediar paths.

uc_utils_vector_length ()

guint32             uc_utils_vector_length              (gpointer data);

Calculate the length of the given vector.

data :

A vector.

Returns :

The length of a given vector.

uc_utils_strpbrk_or_eos ()

gchar *             uc_utils_strpbrk_or_eos             (const gchar *str,
                                                         const gchar *accept);

Return a pointer on a given char address or on the end of the passed string.

str :

A string.

accept :

A string with characters to search for.

Returns :

A pointer on the new offset.

uc_utils_strdup_delim ()

gchar *             uc_utils_strdup_delim               (const gchar *begin,
                                                         const gchar *end);

Make a string with 2 given pointers.

begin :

The source position.

end :

The end position.

Returns :

A new allocated string.

uc_utils_array_is_in ()

gboolean            uc_utils_array_is_in                (const gchar *item,
                                                         gpointer array,
                                                         const guint size);

Search for the first argument in the second argument vector.

item :

Item to search for.

array :

Vector to search in.

size :

Size of the vector.

Returns :

TRUE if the first argument is in the second argument vector.

uc_utils_test_socket_open ()

gboolean            uc_utils_test_socket_open           (const guint sock);

Check if a connection if alive or not. -> taken from wget source code

sock :

The socket to test.

Returns :

TRUE if it is alive.

uc_utils_get_gnome_browser_conf ()

gchar *             uc_utils_get_gnome_browser_conf     (void);

Get the current default gnome web browser or "mozilla" if it does not find it.

Returns :

The current gnome default web browser

uc_utils_get_auth_fields ()

gboolean            uc_utils_get_auth_fields            (GladeXML *g,
                                                         GtkWidget *w_auth_user,
                                                         GtkWidget *w_auth_password,
                                                         gchar **auth_user,
                                                         gchar **auth_password,
                                                         gchar **auth_line);

Get user/password from a authentication dialog and build the line for basic authentication to pass to HTTP headers.

See: uc_utils_build_auth_line()

g :

a GladeXML object.

w_auth_user :

GtkWidget containing auth user string

w_auth_password :

GtkWidget containing auth password string

auth_user :

user will be store here.

auth_password :

password will be store here.

auth_line :

authentication line will be store here.

Returns :

TRUE if user and password have been entered.

uc_utils_build_auth_line ()

gchar *             uc_utils_build_auth_line            (const gchar *auth_user,
                                                         const gchar *auth_password);

Build the line for basic authentication to pass to HTTP headers.

See: uc_utils_get_auth_fields()

auth_user :

user

auth_password :

password

Returns :

a new memoty allocated string containing basic authentication line.