1.1 --- a/librazor/razor-internal.h Sat May 09 21:30:22 2009 +0100
1.2 +++ b/librazor/razor-internal.h Fri Jun 12 16:59:11 2009 +0100
1.3 @@ -1,6 +1,7 @@
1.4 /*
1.5 * Copyright (C) 2008 Kristian Høgsberg <krh@redhat.com>
1.6 * Copyright (C) 2008 Red Hat, Inc
1.7 + * Copyright (C) 2009 J. Ali Harlow <ali@juiblex.co.uk>
1.8 *
1.9 * This program is free software; you can redistribute it and/or modify
1.10 * it under the terms of the GNU General Public License as published by
1.11 @@ -67,6 +68,11 @@
1.12 #define RAZOR_FILE_POOL "file_pool"
1.13 #define RAZOR_FILE_STRING_POOL "file_string_pool"
1.14
1.15 +struct razor_script {
1.16 + uint32_t program;
1.17 + uint32_t body;
1.18 +};
1.19 +
1.20 struct razor_package {
1.21 unsigned int name : 24;
1.22 unsigned int flags : 8;
1.23 @@ -78,6 +84,8 @@
1.24 uint32_t license;
1.25 struct list_head properties;
1.26 struct list_head files;
1.27 + struct razor_script preun;
1.28 + struct razor_script postun;
1.29 };
1.30
1.31
1.32 @@ -175,17 +183,28 @@
1.33 razor_merger_add_package(struct razor_merger *merger,
1.34 struct razor_package *package);
1.35 struct razor_set *
1.36 -razor_merger_finish(struct razor_merger *merger);
1.37 +razor_merger_commit(struct razor_merger *merger);
1.38 +void
1.39 +razor_merger_package_add_script(struct razor_merger *merger,
1.40 + struct razor_package *package,
1.41 + enum razor_property_flags script,
1.42 + const char *program, const char *body);
1.43 +void
1.44 +razor_merger_destroy(struct razor_merger *merger);
1.45
1.46 int run_lua_script(const char *root, const char *name, const char *body,
1.47 ssize_t len);
1.48
1.49 +int razor_run_script(const char *root, enum razor_property_flags script,
1.50 + const char *program, const char *body);
1.51 +
1.52 /* Utility functions */
1.53
1.54 void
1.55 razor_package_get_details_varg(struct razor_set *set,
1.56 struct razor_package *package,
1.57 va_list args);
1.58 +void razor_rpm_get_details_varg(struct razor_rpm *rpm, va_list args);
1.59
1.60 int razor_create_dir(const char *root, const char *path);
1.61 int razor_write(int fd, const void *data, size_t size);