I use long int type to pass the epoch around. This type can both cover the entire range of RPM_INT32_TYPE (the type of epoch value) and -1 for the 'any epoch' semantics. Compared to the previous version, it saves us one malloc and is not longer.