-
Notifications
You must be signed in to change notification settings - Fork 62
Open
Description
Last week, the build started failing on the latex/pdf output.
The relevant part of the output log seems to be:
! You can't use `macro parameter character #' in horizontal mode.
<argument> ##
##168
l.10 ...book/issues/168}{##168}}}{25}{section*.16}
%
?
! Emergency stop.
<argument> ##
##168
l.10 ...book/issues/168}{##168}}}{25}{section*.16}
%
! ==> Fatal error occurred, no output PDF file produced!
When investigating this further, it seems that in the build/book.tdo file, which is presumably produced to create a list of todos, there is an incorrect entry produced as follows:
\contentsline {todo}{7. The gadgets in the figure are made up, chosen to highlight that each gadget can end in a different type of indirect control flow transfer instruction. Consider replacing them with more realistic ones. \href {https://github.com/llsoftsec/llsoftsecbook/issues/165}{\#165}}{16}{section*.12}%
\contentsline {todo}{8. {Add more references to relevant research \href {https://github.com/llsoftsec/llsoftsecbook/issues/166}{\#166}}}{21}{section*.13}%
\contentsline {todo}{9. {Mention more Pointer Authentication uses in later section, and add link here \href {https://github.com/llsoftsec/llsoftsecbook/issues/167}{\#167}}}{21}{section*.14}%
\contentsline {todo}{10. {Add diagram to demonstrate how HWASAN works \href {https://github.com/llsoftsec/llsoftsecbook/issues/168}{##168}}}{25}{section*.16}%
\contentsline {todo}{11. {Consider adding a whole section on MTE and its applications \href {https://github.com/llsoftsec/llsoftsecbook/issues/169}{\#169}}}{26}{section*.17}%
\contentsline {todo}{12. Describe other mechanisms for detecting memory errors, both software-based (static analysis, library and buffer hardening) and hardware-based, e.g.~PAuth-based pointer integrity schemes, MTE etc \href {https://github.com/llsoftsec/llsoftsecbook/issues/170}{\#170}}{26}{section*.18}%
Note that for some reason, the reference to issue 168 in there is written as .. llsoftsecbook/issues/168}{##168}}}{25}{section*.16}%, instead of the correct .. llsoftsecbook/issues/168}{\#168}}}{25}{section*.16}% (backslash instead of hash character).
The content of the book that generates this hasn't been changed for a long time.
It seems that something changed in the texlive 2020 distribution we're using that introduced this erroneous behavior.
Metadata
Metadata
Assignees
Labels
No labels