Squid internals The Storage Manager (src/store*.c) SquidFS API - handling disk IO The following calls exist to manipulate on-disk information sio = storeCreate(e, file_callback, close_callback, callback_data) /* Create an object for writing */ /* file_callback is called when the swap_filen is decided */ sio = storeOpen(e, file_callback, close_callback, callback_data) /* Open an object for reading */ /* file_callback is called if the swap_filen changes */ storeClose(sio) /* Close an object */ storeRead(sio, buf, size, offset, callback, callback_data) /* Read part of an object */ storeWrite(sio, buf, size, offset, freefunc) /* write part of an object, free buf with 'freefunc' */ storeUnlink(e) /* Delete the given object */ offset = storeOffset(sio) /* Get the _on-disk_ offset of the object */