Mafeking: A Diary of a Siege by Baillie, F. D.
 is a Project Gutenberg book, now on Github.