View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000863||LDMud 3.5||Runtime||public||2018-02-06 00:08||2019-04-05 21:31|
|Fixed in Version||3.5.2|
|Summary||0000863: ldmud --help output causes unreproducible build of manpages|
|Description||When running ldmud --help the first line outputs the time and date as well as the source of entropy (e.g. 2018.02.06 10:03:45 Seeding PRNG from /dev/urandom). Because this is captured by help2man the lmud.1 manpage is always different, even if you're setting the SOURCE_DATE_EPOCH environment variable for help2man to create a reproducible build. Can this output be suppressed when running the ldmud executable with the --help option?|
|Steps To Reproduce||run ldmud --help|
|Tags||No tags attached.|
||In principle, yes. However... The argument parser currently expects that some parts of the driver are already initialized. These are printing these messages. It needs more work than just calling the argument parser earlier and we can't know if --help was given before parsing the arguments...|
If it's very difficult the non-deterministic output could be worked around when generating the manpage.
if help2man ran a wrapper script which did ldmud "$@" | tail -n +2 it would strip the offending line.
It seems to me that the early seeding is done, because the option parser doesn't remember whether --random-seed was given and thus seeding from the random device would not be allowed afterwards. If we would track that, we could seed after argument parsing.
In light of --randomdevice it also seems the correct approach, so the driver doesn't access any file (from the compile time defaults) that the user doesn't want us to.
||Fix committed in revision 7466f90df8bcf27abc6b6f03be2862e2b9f8c054 to master branch (see changeset 4151 for details). Thank you for reporting!|
|2018-02-06 00:08||rjsalts||New Issue|
|2018-02-06 23:13||zesstra||Note Added: 0002451|
|2018-02-06 23:50||rjsalts||Note Added: 0002452|
|2018-02-07 18:55||Gnomi||Note Added: 0002453|
|2018-02-14 21:01||Gnomi||Assigned To||=> Gnomi|
|2018-02-14 21:01||Gnomi||Status||new => assigned|
|2018-02-17 15:38||Gnomi||Source_changeset_attached||=> ldmud.git master 7466f90d|
|2018-02-17 15:38||Gnomi||Note Added: 0002456|
|2018-02-17 15:38||Gnomi||Status||assigned => resolved|
|2018-02-17 15:38||Gnomi||Resolution||open => fixed|
|2019-04-05 21:31||zesstra||Fixed in Version||=> 3.5.2|