repodata.c File Reference

#include <string.h>
#include <fnmatch.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <assert.h>
#include <regex.h>
#include "repo.h"
#include "pool.h"
#include "poolid_private.h"
#include "util.h"
#include "hash.h"
#include "chksum.h"
#include "repopack.h"
#include "repopage.h"

Go to the source code of this file.

Classes

struct  subschema_data
struct  extdata

Defines

#define _GNU_SOURCE
#define REPODATA_BLOCK   255
#define SCHEMATA_BLOCK   31
#define SCHEMATADATA_BLOCK   255
#define REPODATA_ATTRS_BLOCK   31
#define REPODATA_ATTRDATA_BLOCK   1023
#define REPODATA_ATTRIDDATA_BLOCK   63
#define c2h(c)
#define EXTDATA_BLOCK   1023

Enumerations

enum  {
  di_bye, di_enterrepo, di_entersolvable, di_enterrepodata,
  di_enterschema, di_enterkey, di_nextattr, di_nextkey,
  di_nextrepodata, di_nextsolvable, di_nextrepo, di_enterarray,
  di_nextarrayelement, di_entersub, di_leavesub, di_nextsolvableattr,
  di_nextsolvablekey, di_entersolvablekey
}

Functions

unsigned int compress_buf (const unsigned char *in, unsigned int in_len, unsigned char *out, unsigned int out_len)
unsigned int unchecked_decompress_buf (const unsigned char *in, unsigned int in_len, unsigned char *out, unsigned int out_len)
void repodata_initdata (Repodata *data, Repo *repo, int localpool)
void repodata_freedata (Repodata *data)
Repodatarepodata_create (Repo *repo, int localpool)
void repodata_free (Repodata *data)
Id repodata_key2id (Repodata *data, Repokey *key, int create)
Id repodata_schema2id (Repodata *data, Id *schema, int create)
void repodata_free_schemahash (Repodata *data)
Id repodata_str2dir (Repodata *data, const char *dir, int create)
const char * repodata_dir2str (Repodata *data, Id did, const char *suf)
static unsigned char * data_skip_schema (Repodata *data, unsigned char *dp, Id schema)
unsigned char * data_skip_key (Repodata *data, unsigned char *dp, Repokey *key)
static unsigned char * forward_to_key (Repodata *data, Id keyid, Id *keyp, unsigned char *dp)
static unsigned char * get_vertical_data (Repodata *data, Repokey *key, Id off, Id len)
static unsigned char * get_data (Repodata *data, Repokey *key, unsigned char **dpp, int advance)
static int load_repodata (Repodata *data)
static int maybe_load_repodata (Repodata *data, Id keyname)
static unsigned char * solvid2data (Repodata *data, Id solvid, Id *schemap)
static unsigned char * find_key_data (Repodata *data, Id solvid, Id keyname, Repokey **keypp)
Id repodata_lookup_id (Repodata *data, Id solvid, Id keyname)
Id repodata_globalize_id (Repodata *data, Id id, int create)
const char * repodata_lookup_str (Repodata *data, Id solvid, Id keyname)
int repodata_lookup_num (Repodata *data, Id solvid, Id keyname, unsigned int *value)
int repodata_lookup_void (Repodata *data, Id solvid, Id keyname)
const unsigned char * repodata_lookup_bin_checksum (Repodata *data, Id solvid, Id keyname, Id *typep)
int repodata_lookup_idarray (Repodata *data, Id solvid, Id keyname, Queue *q)
int repodata_stringify (Pool *pool, Repodata *data, Repokey *key, KeyValue *kv, int flags)
void repodata_search (Repodata *data, Id solvid, Id keyname, int flags, int(*callback)(void *cbdata, Solvable *s, Repodata *data, Repokey *key, KeyValue *kv), void *cbdata)
void repodata_setpos_kv (Repodata *data, KeyValue *kv)
static Idsolvabledata_fetch (Solvable *s, KeyValue *kv, Id keyname)
int datamatcher_init (Datamatcher *ma, const char *match, int flags)
void datamatcher_free (Datamatcher *ma)
int datamatcher_match (Datamatcher *ma, const char *str)
int repodata_filelistfilter_matches (Repodata *data, const char *str)
int dataiterator_init (Dataiterator *di, Pool *pool, Repo *repo, Id p, Id keyname, const char *match, int flags)
void dataiterator_init_clone (Dataiterator *di, Dataiterator *from)
int dataiterator_set_match (Dataiterator *di, const char *match, int flags)
void dataiterator_set_search (Dataiterator *di, Repo *repo, Id p)
void dataiterator_set_keyname (Dataiterator *di, Id keyname)
void dataiterator_prepend_keyname (Dataiterator *di, Id keyname)
void dataiterator_free (Dataiterator *di)
static unsigned char * dataiterator_find_keyname (Dataiterator *di, Id keyname)
static int dataiterator_filelistcheck (Dataiterator *di)
int dataiterator_step (Dataiterator *di)
void dataiterator_entersub (Dataiterator *di)
void dataiterator_setpos (Dataiterator *di)
void dataiterator_setpos_parent (Dataiterator *di)
void dataiterator_clonepos (Dataiterator *di, Dataiterator *from)
void dataiterator_seek (Dataiterator *di, int whence)
void dataiterator_skip_attribute (Dataiterator *di)
void dataiterator_skip_solvable (Dataiterator *di)
void dataiterator_skip_repo (Dataiterator *di)
void dataiterator_jump_to_solvid (Dataiterator *di, Id solvid)
void dataiterator_jump_to_repo (Dataiterator *di, Repo *repo)
int dataiterator_match (Dataiterator *di, Datamatcher *ma)
void repodata_extend (Repodata *data, Id p)
void repodata_shrink (Repodata *data, int end)
void repodata_extend_block (Repodata *data, Id start, Id num)
Id repodata_new_handle (Repodata *data)
static Id ** repodata_get_attrp (Repodata *data, Id handle)
static void repodata_insert_keyid (Repodata *data, Id handle, Id keyid, Id val, int overwrite)
static void repodata_set (Repodata *data, Id solvid, Repokey *key, Id val)
void repodata_set_id (Repodata *data, Id solvid, Id keyname, Id id)
void repodata_set_num (Repodata *data, Id solvid, Id keyname, unsigned int num)
void repodata_set_poolstr (Repodata *data, Id solvid, Id keyname, const char *str)
void repodata_set_constant (Repodata *data, Id solvid, Id keyname, unsigned int constant)
void repodata_set_constantid (Repodata *data, Id solvid, Id keyname, Id id)
void repodata_set_void (Repodata *data, Id solvid, Id keyname)
void repodata_set_str (Repodata *data, Id solvid, Id keyname, const char *str)
void repodata_set_binary (Repodata *data, Id solvid, Id keyname, void *buf, int len)
static void repodata_add_array (Repodata *data, Id handle, Id keyname, Id keytype, int entrysize)
void repodata_set_bin_checksum (Repodata *data, Id solvid, Id keyname, Id type, const unsigned char *str)
static int hexstr2bytes (unsigned char *buf, const char *str, int buflen)
void repodata_set_checksum (Repodata *data, Id solvid, Id keyname, Id type, const char *str)
const char * repodata_chk2str (Repodata *data, Id type, const unsigned char *buf)
static const char * evrid2vrstr (Pool *pool, Id evrid)
void repodata_set_location (Repodata *data, Id solvid, int medianr, const char *dir, const char *file)
void repodata_add_dirnumnum (Repodata *data, Id solvid, Id keyname, Id dir, Id num, Id num2)
void repodata_add_dirstr (Repodata *data, Id solvid, Id keyname, Id dir, const char *str)
void repodata_add_idarray (Repodata *data, Id solvid, Id keyname, Id id)
void repodata_add_poolstr_array (Repodata *data, Id solvid, Id keyname, const char *str)
void repodata_add_fixarray (Repodata *data, Id solvid, Id keyname, Id ghandle)
void repodata_add_flexarray (Repodata *data, Id solvid, Id keyname, Id ghandle)
void repodata_delete_uninternalized (Repodata *data, Id solvid, Id keyname)
void repodata_merge_attrs (Repodata *data, Id dest, Id src)
void repodata_merge_some_attrs (Repodata *data, Id dest, Id src, Map *keyidmap, int overwrite)
static void data_addid (struct extdata *xd, Id x)
static void data_addideof (struct extdata *xd, Id x, int eof)
static void data_addblob (struct extdata *xd, unsigned char *blob, int len)
static void repodata_serialize_key (Repodata *data, struct extdata *newincore, struct extdata *newvincore, Id *schema, Repokey *key, Id val)
void repodata_internalize (Repodata *data)
void repodata_disable_paging (Repodata *data)
static void repodata_load_stub (Repodata *data)
void repodata_create_stubs (Repodata *data)

Variables

static Repokey solvablekeys [RPM_RPMDBID-SOLVABLE_NAME+1]


Define Documentation

#define _GNU_SOURCE

Definition at line 17 of file repodata.c.

#define REPODATA_BLOCK   255

#define SCHEMATA_BLOCK   31

Definition at line 164 of file repodata.c.

Referenced by repodata_schema2id().

#define SCHEMATADATA_BLOCK   255

Definition at line 165 of file repodata.c.

Referenced by repodata_schema2id().

#define REPODATA_ATTRS_BLOCK   31

Definition at line 1775 of file repodata.c.

Referenced by repodata_insert_keyid().

#define REPODATA_ATTRDATA_BLOCK   1023

#define REPODATA_ATTRIDDATA_BLOCK   63

Definition at line 1777 of file repodata.c.

Referenced by repodata_add_array().

#define c2h (  ) 

Value:

(((c)>='0' && (c)<='9') ? ((c)-'0')             \
                : ((c)>='a' && (c)<='f') ? ((c)-('a'-10))       \
                : ((c)>='A' && (c)<='F') ? ((c)-('A'-10))       \
                : -1)

Referenced by hexstr2bytes().

#define EXTDATA_BLOCK   1023

Definition at line 2323 of file repodata.c.

Referenced by data_addblob(), and data_addid().


Enumeration Type Documentation

anonymous enum

Enumerator:
di_bye 
di_enterrepo 
di_entersolvable 
di_enterrepodata 
di_enterschema 
di_enterkey 
di_nextattr 
di_nextkey 
di_nextrepodata 
di_nextsolvable 
di_nextrepo 
di_enterarray 
di_nextarrayelement 
di_entersub 
di_leavesub 
di_nextsolvableattr 
di_nextsolvablekey 
di_entersolvablekey 

Definition at line 1042 of file repodata.c.


Function Documentation

unsigned int compress_buf ( const unsigned char *  in,
unsigned int  in_len,
unsigned char *  out,
unsigned int  out_len 
)

unsigned int unchecked_decompress_buf ( const unsigned char *  in,
unsigned int  in_len,
unsigned char *  out,
unsigned int  out_len 
)

void repodata_initdata ( Repodata data,
Repo repo,
int  localpool 
)

void repodata_freedata ( Repodata data  ) 

Repodata* repodata_create ( Repo repo,
int  localpool 
)

Definition at line 101 of file repodata.c.

References _Repo::nrepodata, _Repo::repodata, repodata_initdata(), and sat_realloc2().

Referenced by repo_add_repodata().

void repodata_free ( Repodata data  ) 

Definition at line 113 of file repodata.c.

References _Repo::nrepodata, _Repodata::repo, _Repo::repodata, and repodata_freedata().

Id repodata_key2id ( Repodata data,
Repokey key,
int  create 
)

Id repodata_schema2id ( Repodata data,
Id schema,
int  create 
)

void repodata_free_schemahash ( Repodata data  ) 

Id repodata_str2dir ( Repodata data,
const char *  dir,
int  create 
)

const char* repodata_dir2str ( Repodata data,
Id  did,
const char *  suf 
)

static unsigned char* data_skip_schema ( Repodata data,
unsigned char *  dp,
Id  schema 
) [inline, static]

unsigned char* data_skip_key ( Repodata data,
unsigned char *  dp,
Repokey key 
)

static unsigned char* forward_to_key ( Repodata data,
Id  keyid,
Id keyp,
unsigned char *  dp 
) [static]

static unsigned char* get_vertical_data ( Repodata data,
Repokey key,
Id  off,
Id  len 
) [static]

static unsigned char* get_data ( Repodata data,
Repokey key,
unsigned char **  dpp,
int  advance 
) [inline, static]

static int load_repodata ( Repodata data  )  [static]

Definition at line 446 of file repodata.c.

References _Repodata::loadcallback, REPODATA_AVAILABLE, REPODATA_ERROR, and _Repodata::state.

Referenced by maybe_load_repodata().

static int maybe_load_repodata ( Repodata data,
Id  keyname 
) [inline, static]

static unsigned char* solvid2data ( Repodata data,
Id  solvid,
Id schemap 
) [inline, static]

static unsigned char* find_key_data ( Repodata data,
Id  solvid,
Id  keyname,
Repokey **  keypp 
) [inline, static]

Id repodata_lookup_id ( Repodata data,
Id  solvid,
Id  keyname 
)

Definition at line 547 of file repodata.c.

References data_read_id(), find_key_data(), _Repokey::size, and _Repokey::type.

Referenced by pool_lookup_id(), and repo_lookup_id().

Id repodata_globalize_id ( Repodata data,
Id  id,
int  create 
)

const char* repodata_lookup_str ( Repodata data,
Id  solvid,
Id  keyname 
)

int repodata_lookup_num ( Repodata data,
Id  solvid,
Id  keyname,
unsigned int *  value 
)

int repodata_lookup_void ( Repodata data,
Id  solvid,
Id  keyname 
)

const unsigned char* repodata_lookup_bin_checksum ( Repodata data,
Id  solvid,
Id  keyname,
Id typep 
)

int repodata_lookup_idarray ( Repodata data,
Id  solvid,
Id  keyname,
Queue q 
)

Definition at line 650 of file repodata.c.

References data_read_ideof(), find_key_data(), queue_empty(), and queue_push().

Referenced by pool_addfileprovides_search().

int repodata_stringify ( Pool pool,
Repodata data,
Repokey key,
KeyValue kv,
int  flags 
)

void repodata_search ( Repodata data,
Id  solvid,
Id  keyname,
int  flags,
int(*)(void *cbdata, Solvable *s, Repodata *data, Repokey *key, KeyValue *kv)  callback,
void *  cbdata 
)

void repodata_setpos_kv ( Repodata data,
KeyValue kv 
)

static Id* solvabledata_fetch ( Solvable s,
KeyValue kv,
Id  keyname 
) [inline, static]

int datamatcher_init ( Datamatcher ma,
const char *  match,
int  flags 
)

void datamatcher_free ( Datamatcher ma  ) 

int datamatcher_match ( Datamatcher ma,
const char *  str 
)

int repodata_filelistfilter_matches ( Repodata data,
const char *  str 
)

Definition at line 1028 of file repodata.c.

Referenced by dataiterator_filelistcheck(), and pool_addfileprovides_search().

int dataiterator_init ( Dataiterator di,
Pool pool,
Repo repo,
Id  p,
Id  keyname,
const char *  match,
int  flags 
)

void dataiterator_init_clone ( Dataiterator di,
Dataiterator from 
)

int dataiterator_set_match ( Dataiterator di,
const char *  match,
int  flags 
)

void dataiterator_set_search ( Dataiterator di,
Repo repo,
Id  p 
)

void dataiterator_set_keyname ( Dataiterator di,
Id  keyname 
)

void dataiterator_prepend_keyname ( Dataiterator di,
Id  keyname 
)

void dataiterator_free ( Dataiterator di  ) 

static unsigned char* dataiterator_find_keyname ( Dataiterator di,
Id  keyname 
) [inline, static]

static int dataiterator_filelistcheck ( Dataiterator di  )  [static]

int dataiterator_step ( Dataiterator di  ) 

Definition at line 1223 of file repodata.c.

References _Dataiterator::data, data_fetch(), data_read_id(), data_skip_schema(), dataiterator_filelistcheck(), dataiterator_find_keyname(), datamatcher_match(), _Dataiterator::ddp, di_bye, di_enterarray, di_enterkey, di_enterrepo, di_enterrepodata, di_enterschema, di_entersolvable, di_entersolvablekey, di_entersub, di_leavesub, di_nextarrayelement, di_nextattr, di_nextkey, di_nextrepo, di_nextrepodata, di_nextsolvable, di_nextsolvableattr, di_nextsolvablekey, _Repo::disabled, _Dataiterator::di_parent::dp, _Dataiterator::dp, _Repo::end, _KeyValue::entry, _KeyValue::eof, _Datamatcher::flags, _Dataiterator::flags, get_data(), _KeyValue::id, _Dataiterator::idp, _Dataiterator::key, _Dataiterator::keyname, _Dataiterator::keynames, _Dataiterator::di_parent::keyp, _Dataiterator::keyp, _Repodata::keys, _Dataiterator::di_parent::kv, _Dataiterator::kv, _Datamatcher::match, _Dataiterator::matcher, maybe_load_repodata(), _Repokey::name, _Dataiterator::nkeynames, _Dataiterator::nparents, _Repo::nrepodata, _Pool::nrepos, _KeyValue::num, _KeyValue::parent, _Dataiterator::parents, _Dataiterator::pool, _Pool::pos, _Solvable::repo, _Dataiterator::repo, _Repo::repodata, repodata_stringify(), _Dataiterator::repodataid, _Dataiterator::repoid, _Pool::repos, _Dataiterator::rootlevel, _Repodata::schemadata, _Repodata::schemata, SEARCH_ARRAYSENTINEL, SEARCH_DISABLED_REPOS, SEARCH_FILES, SEARCH_NO_STORAGE_SOLVABLE, SEARCH_NOCASE, SEARCH_STRING, SEARCH_STRINGMASK, SEARCH_SUB, SEARCH_THISSOLVID, solvabledata_fetch(), _Pool::solvables, _Repopos::solvid, _Dataiterator::solvid, solvid2data(), SOLVID_POS, _Repo::start, _Dataiterator::state, _KeyValue::str, and _Repokey::type.

Referenced by repodata_create_stubs(), and solvable_lookup_idarray().

void dataiterator_entersub ( Dataiterator di  ) 

Definition at line 1473 of file repodata.c.

References di_entersub, di_nextarrayelement, and _Dataiterator::state.

Referenced by repodata_create_stubs().

void dataiterator_setpos ( Dataiterator di  ) 

void dataiterator_setpos_parent ( Dataiterator di  ) 

void dataiterator_clonepos ( Dataiterator di,
Dataiterator from 
)

void dataiterator_seek ( Dataiterator di,
int  whence 
)

void dataiterator_skip_attribute ( Dataiterator di  ) 

Definition at line 1586 of file repodata.c.

References di_nextkey, di_nextsolvableattr, di_nextsolvablekey, and _Dataiterator::state.

void dataiterator_skip_solvable ( Dataiterator di  ) 

void dataiterator_skip_repo ( Dataiterator di  ) 

void dataiterator_jump_to_solvid ( Dataiterator di,
Id  solvid 
)

void dataiterator_jump_to_repo ( Dataiterator di,
Repo repo 
)

int dataiterator_match ( Dataiterator di,
Datamatcher ma 
)

void repodata_extend ( Repodata data,
Id  p 
)

void repodata_shrink ( Repodata data,
int  end 
)

void repodata_extend_block ( Repodata data,
Id  start,
Id  num 
)

Id repodata_new_handle ( Repodata data  ) 

static Id** repodata_get_attrp ( Repodata data,
Id  handle 
) [inline, static]

static void repodata_insert_keyid ( Repodata data,
Id  handle,
Id  keyid,
Id  val,
int  overwrite 
) [static]

static void repodata_set ( Repodata data,
Id  solvid,
Repokey key,
Id  val 
) [static]

void repodata_set_id ( Repodata data,
Id  solvid,
Id  keyname,
Id  id 
)

void repodata_set_num ( Repodata data,
Id  solvid,
Id  keyname,
unsigned int  num 
)

void repodata_set_poolstr ( Repodata data,
Id  solvid,
Id  keyname,
const char *  str 
)

void repodata_set_constant ( Repodata data,
Id  solvid,
Id  keyname,
unsigned int  constant 
)

void repodata_set_constantid ( Repodata data,
Id  solvid,
Id  keyname,
Id  id 
)

void repodata_set_void ( Repodata data,
Id  solvid,
Id  keyname 
)

void repodata_set_str ( Repodata data,
Id  solvid,
Id  keyname,
const char *  str 
)

void repodata_set_binary ( Repodata data,
Id  solvid,
Id  keyname,
void *  buf,
int  len 
)

static void repodata_add_array ( Repodata data,
Id  handle,
Id  keyname,
Id  keytype,
int  entrysize 
) [static]

void repodata_set_bin_checksum ( Repodata data,
Id  solvid,
Id  keyname,
Id  type,
const unsigned char *  str 
)

static int hexstr2bytes ( unsigned char *  buf,
const char *  str,
int  buflen 
) [static]

Definition at line 2055 of file repodata.c.

References c2h.

Referenced by repodata_set_checksum().

void repodata_set_checksum ( Repodata data,
Id  solvid,
Id  keyname,
Id  type,
const char *  str 
)

Definition at line 2080 of file repodata.c.

References hexstr2bytes(), repodata_set_bin_checksum(), and sat_chksum_len().

const char* repodata_chk2str ( Repodata data,
Id  type,
const unsigned char *  buf 
)

static const char* evrid2vrstr ( Pool pool,
Id  evrid 
) [inline, static]

Definition at line 2116 of file repodata.c.

References id2str().

Referenced by repodata_set_location().

void repodata_set_location ( Repodata data,
Id  solvid,
int  medianr,
const char *  dir,
const char *  file 
)

void repodata_add_dirnumnum ( Repodata data,
Id  solvid,
Id  keyname,
Id  dir,
Id  num,
Id  num2 
)

void repodata_add_dirstr ( Repodata data,
Id  solvid,
Id  keyname,
Id  dir,
const char *  str 
)

void repodata_add_idarray ( Repodata data,
Id  solvid,
Id  keyname,
Id  id 
)

void repodata_add_poolstr_array ( Repodata data,
Id  solvid,
Id  keyname,
const char *  str 
)

void repodata_add_fixarray ( Repodata data,
Id  solvid,
Id  keyname,
Id  ghandle 
)

void repodata_add_flexarray ( Repodata data,
Id  solvid,
Id  keyname,
Id  ghandle 
)

void repodata_delete_uninternalized ( Repodata data,
Id  solvid,
Id  keyname 
)

Definition at line 2271 of file repodata.c.

References _Repodata::keys, _Repokey::name, and repodata_get_attrp().

void repodata_merge_attrs ( Repodata data,
Id  dest,
Id  src 
)

Definition at line 2297 of file repodata.c.

References _Repodata::attrs, repodata_insert_keyid(), and _Repodata::start.

void repodata_merge_some_attrs ( Repodata data,
Id  dest,
Id  src,
Map keyidmap,
int  overwrite 
)

Definition at line 2307 of file repodata.c.

References _Repodata::attrs, MAPTST, repodata_insert_keyid(), and _Repodata::start.

static void data_addid ( struct extdata xd,
Id  x 
) [static]

static void data_addideof ( struct extdata xd,
Id  x,
int  eof 
) [static]

Definition at line 2353 of file repodata.c.

References data_addid().

Referenced by repodata_serialize_key().

static void data_addblob ( struct extdata xd,
unsigned char *  blob,
int  len 
) [static]

Definition at line 2361 of file repodata.c.

References extdata::buf, EXTDATA_BLOCK, extdata::len, and sat_extend().

Referenced by repodata_internalize(), and repodata_serialize_key().

static void repodata_serialize_key ( Repodata data,
struct extdata newincore,
struct extdata newvincore,
Id schema,
Repokey key,
Id  val 
) [static]

void repodata_internalize ( Repodata data  ) 

void repodata_disable_paging ( Repodata data  ) 

Definition at line 2738 of file repodata.c.

References maybe_load_repodata(), repopagestore_disable_paging(), and _Repodata::store.

Referenced by repo_disable_paging().

static void repodata_load_stub ( Repodata data  )  [static]

void repodata_create_stubs ( Repodata data  ) 


Variable Documentation

Repokey solvablekeys[RPM_RPMDBID-SOLVABLE_NAME+1] [static]

Initial value:

 {
  { SOLVABLE_NAME,        REPOKEY_TYPE_ID, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_ARCH,        REPOKEY_TYPE_ID, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_EVR,         REPOKEY_TYPE_ID, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_VENDOR,      REPOKEY_TYPE_ID, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_PROVIDES,    REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_OBSOLETES,   REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_CONFLICTS,   REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_REQUIRES,    REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_RECOMMENDS,  REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_SUGGESTS,    REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_SUPPLEMENTS, REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { SOLVABLE_ENHANCES,    REPOKEY_TYPE_IDARRAY, 0, KEY_STORAGE_SOLVABLE },
  { RPM_RPMDBID,          REPOKEY_TYPE_U32, 0, KEY_STORAGE_SOLVABLE },
}

Definition at line 860 of file repodata.c.


doxygen