Esta función destruye un endpoint liberando toda la información y memoria asociada a él. En el caso de un endpoint de escritura basta con liberar la estructura endpoint. Para un endpoint de lectura hace falta notificar a la entidad de comunicación que ya no se va a emplear más ese punto de acceso. Para ello se envía un mensaje de tipo MSG_FIN al bloque .
typedef struct msg_fin { int tipo; // Tipo de mensaje MSG_FIN int id_cli; // El valor del punto de acceso a liberar } msg_fin;
A continuación se deja de emplear la zona de memoria y los semáforos, así como se libera la estructura endpoint. El bloque se encarga de destruir la zona de memoria compartida y los semáforos.