Todo List

Class rpmlead
Don't use any information from lead.

Class tagMacro
Should other macros be added from header when installing a package?

File buildio.h
Eliminate, merge into rpmlib.

Global genCpioListAndHeader
Should directories have doc/config attributes? (#14531)

Remove RPMTAG_OLDFILENAMES, add dirname/basename instead.

Parameters:
fl package file tree walk data
Return values:
*fip file info for package
Parameters:
h 
isSrc 

Global cpio_doio
Create transaction set *much* earlier.

Global doSetupMacro
FIXME: Option -q broken when not immediately after setup.
Parameters:
spec build info
line current line from spec file
Returns:
0 on success

Global rpmfcPrint
Remove debugging routine.
Parameters:
msg message prefix (NULL for none)
fc file classifier
fp output file handle (NULL for stderr)

Global armorFormat
Permit selectable display formats (i.e. binary).
Parameters:
type tag type
data tag value
formatPrefix (unused)
padding (unused)
element no. bytes of binary data
Returns:
formatted string

Global base64Format
Permit selectable display formats (i.e. binary).
Parameters:
type tag type
data tag value
formatPrefix (unused)
padding 
element 
Returns:
formatted string

Global getFilesystemList
determine rdonly for non-linux file systems.
Returns:
0 on success, 1 on error

Global rpmReadPackageManifest
Infinite loops through manifest files exist, operator error for now.

Global rpmReadPackageFile
Implement disable/enable/warn/error/anal policy.

Global handleOneTrigger
Trigger on any provides, not just package NVR.
Parameters:
psm package state machine data
sourceH 
triggeredH 
arg2 
triggersAlreadyRun 
Returns:

Global rpmpsmStage
Packages w/o files never get a callback, hence don't get displayed on install with -v.

Global XrpmpsmLink
Remove debugging entry from the ABI.

Global XrpmpsmUnlink
Remove debugging entry from the ABI.

Global rpmalSatisfiesDepend
Eliminate.
Parameters:
al available list
ds dependency set
Return values:
keyp added package key pointer (or NULL)
Returns:
associated package key, NULL if none

Global readFile
If the GPG key was known available, the md5 digest could be skipped.

Global XrpmdsLink
Remove debugging entry from the ABI.

Global XrpmdsUnlink
Remove debugging entry from the ABI.

Global relocateFileList
multilib file dispositions need to be checked.
Parameters:
ts transaction set
fi transaction element file info
origH package header
actions file dispositions
Returns:
header with relocated files

Global XrpmfiLink
Remove debugging entry from the ABI.
Parameters:
fi file info set
msg 
fn 
ln 
Returns:
NULL always

Global XrpmfiUnlink
Remove debugging entry from the ABI.
Parameters:
fi file info set
msg 
fn 
ln 
Returns:
NULL always

Global printHash
Unsnarl isatty(STDOUT_FILENO) from the control flow.
Parameters:
amount current
total final

Global rpmprobFilterFlags
Generalize filter mechanism.

Global RPMTRANS_FLAG_KEEPOBSOLETE
Document.

Global RPMFILE_SPECFILE
(unnecessary) marks 1st file in srpm.

Global RPMSENSE_SERIAL
Legacy.

Global RPMSENSE_PREREQ
Legacy.

Global RPMSENSE_TRIGGERPREIN
Implement triggerprein.

Global XrpmpsLink
Remove debugging entry from the ABI.

Global XrpmpsUnlink
Remove debugging entry from the ABI.

Global XrpmsxLink
Remove debugging entry from the ABI.

Global XrpmsxUnlink
Remove debugging entry from the ABI.

Global rpmtePkgFileSize
Signature header is estimated at 256b.
Parameters:
te transaction element
Returns:
size in bytes of package file.

Global XrpmtsLink
Remove debugging entry from the ABI.

Global XrpmtsUnlink
Remove debugging entry from the ABI.

Global printSize
rpmio: use fdSize rather than fstat(2) to get file size.
Parameters:
fd package file handle
siglen signature header size
pad signature padding
datalen length of header+payload
Returns:
rpmRC return code

Global rpmtsiFi
Take a rpmfi refcount here.
Parameters:
tsi transaction element iterator
Returns:
transaction element file info

Global rpmVerifyScript
malloc/free/refcount handling is fishy here.
Parameters:
qva parsed query/verify options
ts transaction set
fi file info set
scriptFd file handle to use for stderr (or NULL)
Returns:
0 on success

Global showShortOptions
Sub-tables should be recursed.
Parameters:
opt option(s)
fp output file handle
Return values:
str concatenation of short options
Returns:
length of display string

Global db3_config_default
Set a reasonable "last gasp" default db config.

Global fingerPrint
Convert to pointer and make abstract.

File header.h
Document version2 headers.

Global dbiFindByLabel
Name must be an exact match, as name is a db key.
Parameters:
dbi index database handle (always RPMTAG_NAME)
dbcursor index database cursor
key search key/length/flags
data search data/length/flags
arg name[-version[-release]] string
Return values:
matches set of header instances that match
Returns:
RPMRC_OK on match, RPMRC_NOMATCH or RPMRC_FAIL

Global XrpmdbLink
Remove debugging entry from the ABI.

Global XrpmdbUnlink
Remove debugging entry from the ABI.

Global expandMacro
Dynamically reallocate target buffer.
Parameters:
mb macro expansion state
Returns:
0 on success, 1 on failure

Global expandMacros
Eliminate from API.
Parameters:
spec cookie (unused)
mc macro context (NULL uses global context).
Return values:
sbuf input macro to expand, output expansion
Parameters:
slen size of buffer
Returns:
0 on success

Global grabArgs
Use popt rather than getopt to parse args.
Parameters:
mb macro expansion state
me macro entry slot
se arguments to parse
lastc stop parsing at lastc
Returns:
address to continue parsing

Global rpmDefineMacro
Document.

File rpmerr.h
Eliminate from API.

Global rpmlogClose
Implement.

Global rpmlogOpen
Implement.

Global rpmlogCallback
Add argument(s), integrate with other types of callbacks.

Global xrealloc
Annotate ptr with returned/out.

File rpmmessages.h
Eliminate from API.

Global pgpHashAlgo
Add SHA256.

Global pgpHexStr
Remove static buffer.
Parameters:
p bytes
plen no. of bytes
Returns:
hex formatted string

Global pgpMpiStr
Remove static buffer.
Parameters:
p bytes
Returns:
hex formatted string

Global rpmsqWaitUnregister
Rewrite to use waitpid on helper thread.
Parameters:
sq scriptlet queue element
Returns:
0 on success

Global XurlFree
Remove debugging entry from the ABI.

Global XurlLink
Remove debugging entry from the ABI.

Global XurlNew
Remove debugging entry from the ABI.

Global rpmQVSources
Reassign to tag values.

Global rpmQueryFlags
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs?.

Global rpmVerifyFlags
Merge rpmQueryFlags, rpmVerifyFlags, and rpmVerifyAttrs values?.

Global showQueryPackage
Devise a meaningful return code.
Parameters:
qva parsed query/verify options
ts transaction set
h header to use for query
Returns:
0 always

Global rpmcliQuery
hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
Parameters:
ts transaction set
qva parsed query/verify options
argv query argument(s) (or NULL)
Returns:
0 on success, else no. of failures

Global rpmVerifyFile
gnorpm and python bindings prevent this from being static.
Parameters:
ts transaction set
fi file info (with linked header and current file index)
Return values:
*res bit(s) returned to indicate failure
Parameters:
omitMask bit(s) to disable verify checks
Returns:
0 on success (or not installed), 1 on error

Global rpmcliVerify
hack: RPMQV_ALL can pass char ** arglist = NULL, not char * arg. Union?
Parameters:
ts transaction set
qva parsed query/verify options
argv verify argument(s) (or NULL)
Returns:
0 on success, else no. of failures

Global rpmcliImportPubkey
Implicit --update policy for gpg-pubkey headers.
Parameters:
ts transaction set
pkt pgp pubkey packet(s)
pktlen pgp pubkey length
Returns:
RPMRC_OK/RPMRC_FAIL

Global rpmInstallInterfaceFlags
Move to rpmcli.h

Global rpmShowProgress
Remove headerSprintf() from the progress callback.

Global rpmInstall
Generalize --freshen policies.

Global rpmRollback
Transaction handling, more, needs work.

Global rpmcliImportPubkeys
Implicit --update policy for gpg-pubkey headers.
Parameters:
ts transaction set
qva mode flags and parameters
argv array of pubkey file names (NULL terminated)
Returns:
0 on success

Global rpmts_AddErase
Permit finer control (i.e. not just --allmatches) of deleted elments.

Global rpmts_iternext
Add TR_ADDED filter to iterator.

Global rpmts_Next
Add TR_ADDED filter to iterator.

Global getGidS
Implement using hash.
Parameters:
gname group name
Returns:
cached gid

Global getGname
Implement using hash.
Parameters:
gid group id
Returns:
cached group name

Global getGnameS
Implement using hash.
Parameters:
gname group name
Returns:
cached group name

Global getOutputFrom
Use poll(2) rather than select(2), if available.
Parameters:
dir directory to run in (or NULL)
argv program and arguments to run
writePtr bytes to feed to script on stdin (or NULL)
writeBytesLeft no. of bytes to feed to script on stdin
failNonZero is script failure an error?
Returns:
buffered stdout from script, NULL on error

Global getUidS
Implement using hash.
Parameters:
uname user name
Returns:
cached uid

Global getUname
Implement using hash.
Parameters:
uid user id
Returns:
cached user name

Global getUnameS
Implement using hash.
Parameters:
uname user name
Returns:
cached user name

Global rpm_machtable_e
Eliminate from API.

Global rpmGetVar
Eliminate from API.

Global rpmSetVar
Eliminate from API.

Global rpmGetArchInfo
Generalize to extract arch component from target_platform macro.
Return values:
name address of arch name (or NULL)
num address of arch number (or NULL)

Global rpmGetOsInfo
Generalize to extract os component from target_platform macro.
Return values:
name address of os name (or NULL)
num address of os number (or NULL)

Global rpmMachineScore
Rewrite to use RE's against config.guess target platform output.

Global rpmSetTables
Eliminate from API. #
Note:
Only used by build code.
Parameters:
archTable 
osTable 

Global rpmSetMachine
Eliminate from API.

Global rpmGetMachine
Eliminate from API.

Global rpmFreeRpmrc
Eliminate from API.

Global rpmtsGetKeys
Removed packages have no keys, returned as interleaved NULL pointers.
Parameters:
ts transaction set
Return values:
ep address of returned element array pointer (or NULL)
nep address of no. of returned elements (or NULL)
Returns:
0 always

Global HDRaddorappend
Arg "p" should have const.
Parameters:
h header
tag tag
type tag value data type
p pointer to tag value(s)
c number of values
Returns:
1 on success, 0 on failure

Global HDRsort
Eliminate from API.
Parameters:
h header

Global HDRunsort
Eliminate from API.
Parameters:
h header

Global RPM_BIN_ARRAY_TYPE
Implement, kinda like RPM_STRING_ARRAY_TYPE for known (but variable) length binary data.

Global RPM_XREF_TYPE
Implement, intent is to to carry a (???,tagNum,valNum) cross reference to retrieve data from other tags.

Global copyEntry
Permit retrieval of regions other than HEADER_IMUTABLE.
Parameters:
entry header entry
Return values:
type address of type (or NULL)
p address of data (or NULL)
c address of count (or NULL)
Parameters:
minMem string pointers refer to header memory?
Returns:
1 on success, otherwise error.

Global headerAddOrAppendEntry
Arg "p" should have const.
Parameters:
h header
tag tag
type tag value data type
p pointer to tag value(s)
c number of values
Returns:
1 on success, 0 on failure

Global headerAddOrAppendEntry
Arg "p" should have const.
Parameters:
h header
tag tag
type tag value data type
p pointer to tag value(s)
c number of values
Returns:
1 on success, 0 on failure

Global headerFreeData
Remove from API.

Global headerMergeLegacySigs
Remove headerSort() through headerInitIterator() modifies sig.
Parameters:
h header
sigh signature header

Global headerRegenSigHeader
Remove headerSort() through headerInitIterator() modifies h.
Parameters:
h header
noArchiveSize don't copy archive size tag (pre rpm-4.1)
Returns:
regenerated signature header

Global poptCallbackType
Document.
Parameters:
data 
Document.

Global poptAddAlias
Pass alias by reference, not value.

Page Dependencies
per-interpreter dependency generators are not located in subdirectories.

Page Immutable header regions in rpm-4.0.1 and later
Either concatenated/nested regions may be used to implement a metarpm, aka a package of packages, dunno how, when, or even if, yet.


Generated on Fri Feb 24 08:33:50 2006 for rpm by  doxygen 1.4.5