#49955 Ticket 49954 - On s390x arch retrieved DB page size is stored as size_t rather than uint32_t
Closed by spichugi. Opened by tbordaz.
tbordaz/389-ds-base ticket_49954  into  master

Download 49955.patch

Bug Description:
The page size is retrieved from uint32_t dblayer_page_size.
Later it is stored in a size_t variable with a cast.
Depending on little/big endian the page size can be stored in the upper/lower bits of the 64bits variable.
Later the variable is used to set the page size of a database file using the lower bits (uint32_t) that are zeroed.

Fix Description:
The BDB callback to set the pagesize, expects a a uint32_t.
Make sure the field containing it is uint32_t (instead of size_t) as the page
size is retrieved as a uint32_t as well (dblayer_page_size/BACK_INFO_INDEXPAGESIZE)

https://pagure.io/389-ds-base/issue/49954

Reviewed by: ?

Platforms tested: F27

Flag Day: no

Doc impact: no

rebased onto b4164ccf2e1fcd35097dbb67470a00cb3da00735

Pull-Request has been merged by tbordaz

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This pull request has been cloned to Github as issue and is available here:
- https://github.com/389ds/389-ds-base/issues/3014

If you want to continue to work on the PR, please navigate to the github issue,
download the patch from the attachments and file a new pull request.

Thank you for understanding. We apologize for all inconvenience.

Pull-Request has been closed by spichugi

Metadata