1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
#include <errno.h>
#include <unistd.h>
#include <fcntl.h>
#include "npconfig.h"
void NP_Config::remove_files( char *filename )
{
char buffer[ 1024 ], second_buffer[ 1024 ];
snprintf( buffer, sizeof buffer, "%s/.peruser_spool/%s", home,
filename );
FILE *file;
snprintf( second_buffer, sizeof second_buffer, "%s:lock", buffer );
if (( file = fopen( second_buffer, "r" )) != NULL )
{
fclose( file );
snprintf( second_buffer, sizeof second_buffer,
"Spool file: %s\nis currently locked by another"
" process. %s will not have any of its data files removed"
" from ~/.peruser_spool.",
buffer, filename );
show_message( second_buffer, 0 );
return;
}
if ( remove( buffer ))
if ( errno != ENOENT )
perror( "remove" );
snprintf( second_buffer, sizeof second_buffer, "%s:read", buffer );
if ( remove( second_buffer ))
if ( errno != ENOENT )
perror( "remove" );
snprintf( second_buffer, sizeof second_buffer, "%s:requests", buffer );
if ( remove( second_buffer ))
if ( errno != ENOENT )
perror( "remove" );
snprintf( second_buffer, sizeof second_buffer, "%s:threading", buffer );
if ( remove( second_buffer ))
if ( errno != ENOENT )
perror( "remove" );
snprintf( second_buffer, sizeof second_buffer, "%s:ids", buffer );
if ( remove( second_buffer ))
if ( errno != ENOENT )
perror( "remove" );
return;
}
|