
68 Chapter 2 • How to Avoid Becoming a “Code Grinder”
creative programming isn’t always about the code that is written. As
often as not, it is about how one approaches the problem!
Sadly, this device had little to no control as to who connected to it,
because the designers had made the assumption that no one would be
using any other means besides the built-in GUI for management.
Anyone with some experienced writing simple User Agents could have
made changes after bypassing some weak authentication; due to disk
space constraints I was unable to implement anything stronger than a
hosts.allow file as found in the popular TCP Wrappers program.
The lesson to ...