Synopsis

#define             GO_F_OK
enum                GODotDot;
struct              GOFilePermissions;
#define             GO_R_OK
#define             GO_W_OK
#define             GO_X_OK
char *              go_basename_from_uri                (const char *uri);
char *              go_dirname_from_uri                 (const char *uri,
                                                         gboolean brief);
gint                go_file_access                      (char const *uri,
                                                         gint mode);
GsfOutput *         go_file_create                      (char const *uri,
                                                         GError **err);
time_t              go_file_get_date_accessed           (char const *uri);
time_t              go_file_get_date_changed            (char const *uri);
time_t              go_file_get_date_modified           (char const *uri);
gchar *             go_file_get_group_name              (char const *uri);
gchar *             go_file_get_owner_name              (char const *uri);
GsfInput *          go_file_open                        (char const *uri,
                                                         GError **err);
GSList *            go_file_split_urls                  (char const *data);
char *              go_filename_from_uri                (const char *uri);
char *              go_filename_simplify                (const char *filename,
                                                         GODotDot dotdot,
                                                         gboolean make_absolute);
char *              go_filename_to_uri                  (const char *filename);
GOFilePermissions * go_get_file_permissions             (char const *uri);
gchar *             go_get_mime_type                    (gchar const *uri);
gchar *             go_get_mime_type_for_data           (gconstpointer data,
                                                         int data_size);
gchar *             go_mime_type_get_description        (gchar const *mime_type);
void                go_set_file_permissions             (char const *uri,
                                                         GOFilePermissions *file_permissions);
char *              go_shell_arg_to_uri                 (const char *arg);
gchar const **      go_shell_argv_to_glib_encoding      (gint argc,
                                                         gchar const **argv);
void                go_shell_argv_to_glib_encoding_free (void);

Object Hierarchy

  GBoxed
   +----GOFilePermissions

Description

Details

GO_F_OK

#  define GO_F_OK F_OK


enum GODotDot

typedef enum {
	GO_DOTDOT_SYNTACTIC,    /* Assume no symlinks.  */
	GO_DOTDOT_TEST,         /* Check.  */
	GO_DOTDOT_LEAVE         /* Leave alone.  */
} GODotDot;

GO_DOTDOT_SYNTACTIC

assume no symlinks.

GO_DOTDOT_TEST

check.

GO_DOTDOT_LEAVE

leave alone.

struct GOFilePermissions

struct GOFilePermissions {
	gboolean owner_read;
	gboolean owner_write;
	gboolean owner_execute;

	gboolean group_read;
	gboolean group_write;
	gboolean group_execute;

	gboolean others_read;
	gboolean others_write;
	gboolean others_execute;
};

gboolean owner_read;

owner can read.

gboolean owner_write;

owner can write.

gboolean owner_execute;

owner can execute.

gboolean group_read;

group can read.

gboolean group_write;

group can write.

gboolean group_execute;

group can execute.

gboolean others_read;

everybody can read.

gboolean others_write;

everybody can write.

gboolean others_execute;

everybody can execute.

GO_R_OK

#  define GO_R_OK R_OK


GO_W_OK

#  define GO_W_OK W_OK


GO_X_OK

#  define GO_X_OK X_OK


go_basename_from_uri ()

char *              go_basename_from_uri                (const char *uri);

Decode the final path component. Returns as UTF-8 encoded suitable for display.

uri :

The uri

Returns :

a string that the caller is responsible for freeing.

go_dirname_from_uri ()

char *              go_dirname_from_uri                 (const char *uri,
                                                         gboolean brief);

Decode the all but the final path component. Returns as UTF-8 encoded suitable for display.

uri :

target

brief :

if TRUE, hide "file://" if present.

Returns :

dirname which the caller is responsible for freeing.

go_file_access ()

gint                go_file_access                      (char const *uri,
                                                         gint mode);


go_file_create ()

GsfOutput *         go_file_create                      (char const *uri,
                                                         GError **err);

Creates a file or return an error. If the file already exists, it is replaced.

uri :

target uri

err :

GError

Returns :

non-NULL on success. [transfer full]

go_file_get_date_accessed ()

time_t              go_file_get_date_accessed           (char const *uri);


go_file_get_date_changed ()

time_t              go_file_get_date_changed            (char const *uri);


go_file_get_date_modified ()

time_t              go_file_get_date_modified           (char const *uri);


go_file_get_group_name ()

gchar *             go_file_get_group_name              (char const *uri);


go_file_get_owner_name ()

gchar *             go_file_get_owner_name              (char const *uri);


go_file_open ()

GsfInput *          go_file_open                        (char const *uri,
                                                         GError **err);

Try all available methods to open a file or return an error

uri :

target uri

err :

GError

Returns :

non-NULL on success. [transfer full]

go_file_split_urls ()

GSList *            go_file_split_urls                  (char const *data);

Splits the chain into a list of URIs. Lines starting with '#' are ignored.

data :

a string filled with a list of URIs separated by new lines.

Returns :

the URIs list. [element-type char][transfer full]

go_filename_from_uri ()

char *              go_filename_from_uri                (const char *uri);


go_filename_simplify ()

char *              go_filename_simplify                (const char *filename,
                                                         GODotDot dotdot,
                                                         gboolean make_absolute);


go_filename_to_uri ()

char *              go_filename_to_uri                  (const char *filename);


go_get_file_permissions ()

GOFilePermissions * go_get_file_permissions             (char const *uri);


go_get_mime_type ()

gchar *             go_get_mime_type                    (gchar const *uri);

uri :

the uri.

Returns :

the mime type for the file as a newly allocated string. Needs to be freed with g_free().

go_get_mime_type_for_data ()

gchar *             go_get_mime_type_for_data           (gconstpointer data,
                                                         int data_size);

data :

the data.

data_size :

the data size

Returns :

the mime type for the data as a newly allocated string. Needs to be freed with g_free().

go_mime_type_get_description ()

gchar *             go_mime_type_get_description        (gchar const *mime_type);

mime_type :

the mime type to describe.

Returns :

the description for the mime type as a newly allocated string. Needs to be freed with g_free(). If the description is not found, the mime type itself will be returned.

go_set_file_permissions ()

void                go_set_file_permissions             (char const *uri,
                                                         GOFilePermissions *file_permissions);


go_shell_arg_to_uri ()

char *              go_shell_arg_to_uri                 (const char *arg);


go_shell_argv_to_glib_encoding ()

gchar const **      go_shell_argv_to_glib_encoding      (gint argc,
                                                         gchar const **argv);

Transform arguments to UTF-8 when needed.

argc :

arguments number

argv :

command line arguments

Returns :

the arguments in UTF-8 locale. [transfer none]

go_shell_argv_to_glib_encoding_free ()

void                go_shell_argv_to_glib_encoding_free (void);