1. The code you put in a system (say, a telephone switch) to make sure that the users can' t do any damage. Since users always want to be able to do everything but never want to suffer for any mistakes, the construction of a firewall is a question not only of defensive coding but also of interface presentation, so that users don' t even get curious about those corners of a system where they can burn themselves. 2. Any sanity check inserted to catch a can' t happen error. Wise programmers often change code to fix a bug twice: once to fix the bug, and once to insert a firewall which would have arrested the bug before it did quite as much damage. [Jargon File]