Uma variável é booleana se tem apenas dois possíveis valores: false e true. Esses dois valores podem ser representados por 0 e 1, respectivamente. Também pode ser representados por zero e qualquer coisa diferente de zero, respectivamente.
Uma função booleana é definida analogamente. (Funções booleanas também são conhecidas como predicados.)
A propósito, veja a interface stdbool.h, que define o tipo bool e as constantes false e true.