@ -80,6 +80,8 @@ static fs::path GetAuthCookieFile(bool temp=false)
return AbsPathForConfigVal ( gArgs , arg ) ;
}
static bool g_generated_cookie = false ;
bool GenerateAuthCookie ( std : : string * cookie_out )
{
const size_t COOKIE_SIZE = 32 ;
@ -105,6 +107,7 @@ bool GenerateAuthCookie(std::string *cookie_out)
LogPrintf ( " Unable to rename cookie authentication file %s to %s \n " , fs : : PathToString ( filepath_tmp ) , fs : : PathToString ( filepath ) ) ;
return false ;
}
g_generated_cookie = true ;
LogPrintf ( " Generated RPC authentication cookie %s \n " , fs : : PathToString ( filepath ) ) ;
if ( cookie_out )
@ -131,7 +134,10 @@ bool GetAuthCookie(std::string *cookie_out)
void DeleteAuthCookie ( )
{
try {
fs : : remove ( GetAuthCookieFile ( ) ) ;
if ( g_generated_cookie ) {
// Delete the cookie file if it was generated by this process
fs : : remove ( GetAuthCookieFile ( ) ) ;
}
} catch ( const fs : : filesystem_error & e ) {
LogPrintf ( " %s: Unable to remove random auth cookie file: %s \n " , __func__ , fsbridge : : get_filesystem_error_message ( e ) ) ;
}