Frank Jones (Michael Caine) es un ex combatiente de guerra británico y veterano de la Guerra de Corea, que ahora se ha convertido en un hombre de negocios. Su hijo Robert `Bob´Jones (Nigel Havers) trabaja como traductor de ruso para los servicios secretos de espionaje e inteligencia británicos, el GCHQ. Robert le dice a su padre que están ocurriendo cosas extrañas en el GCHQ y que un topo soviético ha sido encontrado. Los altos mandos parecen convencidos de que si no hacen algo al respecto sus amigos estadounidenses de la CIA dejará de trabajar con ellos. Jones le pide a su hijo que guarde silencio sobre lo ocurrido. Pocos días después sale a la luz un informe de la policía que dice que Robert ha muerto a causa de una caída cuando intentaba suicidarse. Es entonces cuando Jones, no satisfecho con la versión oficial de lo ocurrido, decide investigar por su cuenta la verdad acerca de la muerte de su hijo. Es entonces cuando Jones conoce una red de engaño y paranoia que parece impenetrable, pero no descansará hasta averiguar quién asesinó a su hijo.