Respuesta corta:
Es muy posible que el caché no sea completo. Si elimina el correo y hcache luego vuelve a calcular el caché de encabezado para ese buzón, sus estadísticas no incluirán el correo anterior a la eliminación.
Si no tiene acceso a los registros de correo de su servidor, ¿tiene acceso a un mecanismo de filtro, por ejemplo, procmail? Podría usar eso para generar un registro alternativo para el análisis.
De lo contrario, ¿puede sondear su buzón con un programa que pueda generar un registro del correo recibido? Algo así como un filtro de mapa fuera de línea, o fetchmail / retchmail combinado con algo de hashing y almacenamiento en caché.
Respuesta más larga:
El archivo de caché es una base de datos de estilo DBM. Dependiendo de las opciones de compilación exactas para su perro callejero, podría ser uno de QDBM , gabinete de Tokio , gdbm o Berkeley DB (BDB); que implementan una variación de la API de BDB.
Creo que es poco probable que pueda leer la base de datos de manera confiable a menos que use la implementación correcta de la biblioteca. ldd
me dice que mi perro callejero local usa la implementación del gabinete de Tokio:
$ ldd /usr/bin/mutt
…
libtokyocabinet.so.8 => /usr/lib/libtokyocabinet.so.8 (0xb74f2000)
…
Entonces necesitaría escribir un programa, usando esa biblioteca, para consultar el BDB almacenado dentro del archivo de caché. Hay enlaces para Perl, Ruby, Lua, Java y, por supuesto, C.
Parece que los encabezados se almacenan como valores en la base de datos, indexados por un CRC. Por lo que puedo decir, el CRC se deriva de la ruta a un buzón, lo que implica que los encabezados almacenados son los encabezados de todo el correo en ese buzón . Por lo tanto, su programa esencialmente terminará con un búfer que contiene todos los encabezados para todo el correo en un buzón determinado. No creo que sea mucho más útil que extraer los encabezados de todo el correo actualmente en su buzón (y dada la "respuesta breve" anterior, no se garantiza que sea más confiable).