Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
- expandMacro() is big and ugly already, but handling the non-terminated
substrings there once and for all avoids having to ping-pong recurse
through couple of helpers to get there.
|
|
|
|
|
|
- Return the dynamically allocated expansion buffer to callers from
expandU(), except using a slightly less cryptic expandThis() name
for it now. Also deal with non-terminated strings centrally in
expandThis() instead of doing alloc + copy to terminate in every caller.
|
|
- Instead of saving and restoring the bits we'll mess with, just
make a temporary expansion state struct with non-buffer state
copied from "parent".
|
|
- Eliminate the underlying limitation of macro expansion limit by
growing the buffer as needed when adding characters to it. This
doesn't fix the entire issue yet however: expandU() and expandMacros()
are still limited to caller-specified buffer size, and output
from lua-macros isn't dynamically resized. One step at a time...
|
|
- More pre-requisites for dynamic buffer resizing, callers have no
clue how much expandMacro() is going to need.
|
|
- Supposedly no functional changes, just paving way for dynamic
buffer resizing which is impossible when accessing pointers directly.
|
|
- Turn expandMacros() into a wrapper around internal doExpandMacros()
which returns the expanded string in a newly allocated buffer, use
the internal version for rpmExpand() too.
|
|
|
|
- It's just the macro name we're grabbing here, that ought to fit
on stack comfortably enough.
|
|
- In the cases where expandT() was called with strlen(source) we can
now just bypass it and call expandMacro() directly, avoiding an
unnecessary string copy.
|
|
- No functional changes, just eliminating mindless save-and-restore
ping-pong through macro expansion state struct.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- This matches ffread() and read() much better, avoiding pile of casts.
- By some stroke of genious, glibc cookie interfaces disagree with the
other file stream protos by using char * for buf. Argh. Add explicit
cast for the schizophrenia.
|
|
|
|
|
|
|
|
- Enums are fine for defining the bitfield flags, but the bitfield
itself is not an enumeration. Add a separate typedef on "rpmFlags"
type (presenting a bitfield of flags) for all of these. Compilers
hardly care, but the typedefs give a nice visual clue for
us humans using these flags far away from ho^H^H definitions.
|
|
- These are internal helpers only, all refcount users need to use
fooFree() or similar for correct operation. Add fwd declarations
where necessary to avoid moving code around unnecessarily.
- We could add these back later as aliases to fooFree() but for now,
just get them out of the way.
|
|
- Commit 05b2d979e8097d648f91c773f2535a1f6013cb79 caused the
_USE_LIBIO test in rpmio.c to always fail as <stdio.h> wasn't included
yet at the time of the check, causing silent fallback to not
using libio even if actually available. Which in turn revealed
funky other little bugs, addressed in commits
d960e8c18764f7206ad723963f407e960dfb8ad9 and
be3c34dd15814d70a410b6fd646a2be7de14a1b5. Ptooey.
|
|
|
|
|
|
- Fixes "Unknown hash algorithm" message but this is cosmetic only as
NSS doesn't currently support SHA-224.
|
|
- We were adding a trailing newline to urlhelper command line passed
to execvp(), with the newline ending up in the URL passed to curl.
Many servers dont seem to mind the extra newline, but some do. Oh well...
|
|
- RFC-4880 doesn't requires unix-style line-endings, we shouldn't either.
This is probably still oversly strict as RFC-4880 appears to permit
any whitespace to follow armor headers but ... shrug.
|
|
- The equivalent used to be possible in 4.4.x era as the value tables
were all exported, but this way we need to export far less
and the implementation details stay internal.
|
|
- as all the value tables are static inside rpmpgp.c, exposing this
is pointless (should've been unexported long time ago)
|
|
- these have been unused since rpm 4.6.0, and can be implemented
without access to rpmio internals too if somebody cares...
|
|
- these have been unused since rpm 4.6.0, and rpm is not in the
url business, rip.
|
|
- instead of blowing up with asserts, return error codes / NULLs
|
|
|
|
- blowing up with an assert failure deep inside io "library" is not
a very friendly thing to do...
|
|
- the rpmio API always had this goo, should've gotten rid of it
back in commit dbdbe8010cd944f026a5a4e5d071eb31d29d81c4 but .. oh well
|
|
|
|
- Returns the newly created argv instead of useless "this always returns 0"
- By default make a "real" split, including empty strings
- Flags argument allows controlling behavior, for now only flag is to
preserve argvSplit() behavior but leaves room for future enhancements
such as quoted splitting etc
|
|
- Elf dependency extraction code code lifted from rpmfcELF() and refactored
to saner pieces. Having it in separate executable also frees librpmbuild
of libelf dependency, clean up the unnecessary linkage etc from
autofoo
- This lets internal dependency generator for elf files be
overridden without losing file coloring (which is required for
correct multilib handling). It also permits non-native elf files
(eg when cross-building) to be handled by providing a custom
elf dependency helper
- On the flip side, this inevitably slows down builds somewhat as
two fork-exec's are needed for every elf file, but unlike invoking
something like the python interpreter, this is a slim helper...
- All dependency extractors of the internal dependency generator are now
external helpers (how twisted is that, huh? :) and thus can be customized
and filtered through %__foo_provides|requires macros
|
|
|
|
- the "fix" breaks seemingly legitimate use in fedora font package
macros, possibly some funky interaction with %{lua: } macros or something
- this reverts commit f895acd285366cf58cc3c97b5f188fecbfd782a8.
|
|
|
|
|
|
|
|
- most of the places get it through <rpm/rpmstring.h> already
|