diff options
Diffstat (limited to 'libopkg/pkg_parse.h')
-rw-r--r-- | libopkg/pkg_parse.h | 45 |
1 files changed, 36 insertions, 9 deletions
diff --git a/libopkg/pkg_parse.h b/libopkg/pkg_parse.h index 58e530a..5461607 100644 --- a/libopkg/pkg_parse.h +++ b/libopkg/pkg_parse.h @@ -18,14 +18,41 @@ #ifndef PKG_PARSE_H #define PKG_PARSE_H -int isGenericFieldType(char * type, char * line); -char * parseGenericFieldType(char * type, char * raw); -void parseStatus(pkg_t *pkg, char * raw); -int parseVersion(pkg_t *pkg, char *raw); -char ** parseDependsString(char * raw, int * depends_count); -int parseVersion(pkg_t *pkg, char *raw); -void parseConffiles(pkg_t * pkg, char * raw); -int pkg_parse_raw(pkg_t *pkg, char ***raw, pkg_src_t *src, pkg_dest_t *dest); -int pkg_valorize_other_field(pkg_t *pkg, char ***raw); +int parseVersion(pkg_t *pkg, const char *raw); +int pkg_parse_from_stream(pkg_t *pkg, FILE *fp, uint mask); +int pkg_parse_from_stream_nomalloc(pkg_t *pkg, FILE *fp, uint mask, + char **buf0, size_t buf0len); + +#define EXCESSIVE_LINE_LEN (4096 << 8) + +/* package field mask */ +#define PFM_ARCHITECTURE (1 << 1) +#define PFM_AUTO_INSTALLED (1 << 2) +#define PFM_CONFFILES (1 << 3) +#define PFM_CONFLICTS (1 << 4) +#define PFM_DESCRIPTION (1 << 5) +#define PFM_DEPENDS (1 << 6) +#define PFM_ESSENTIAL (1 << 7) +#define PFM_FILENAME (1 << 8) +#define PFM_INSTALLED_SIZE (1 << 9) +#define PFM_INSTALLED_TIME (1 << 10) +#define PFM_MD5SUM (1 << 11) +#define PFM_MAINTAINER (1 << 12) +#define PFM_PACKAGE (1 << 13) +#define PFM_PRIORITY (1 << 14) +#define PFM_PROVIDES (1 << 15) +#define PFM_PRE_DEPENDS (1 << 16) +#define PFM_RECOMMENDS (1 << 17) +#define PFM_REPLACES (1 << 18) +#define PFM_SECTION (1 << 19) +#define PFM_SHA256SUM (1 << 20) +#define PFM_SIZE (1 << 21) +#define PFM_SOURCE (1 << 22) +#define PFM_STATUS (1 << 23) +#define PFM_SUGGESTS (1 << 24) +#define PFM_TAGS (1 << 25) +#define PFM_VERSION (1 << 26) + +#define PFM_ALL (~(uint)0) #endif |