//auth.cpp : Exemple de l'utilisation d'un faux breakpoint

#include <signal.h>

#include <iostream>
	using std::cout;
	using std::cin;
	using std::endl;
	
#include <string>
	using std::string;

#define MDP "exemple_pass"

void authentification(int signo) {
      
      string pass;
	
		cout << "Authentification requise\nMot de passe :\t";
		cin >> pass;      //Capture clavier

		if (pass == MDP)      //Si la chaîne rentrée au clavier est pareil que la chaîne PASS définie plus tôt
		cout << "Authentification réussie, bienvenue dans la suite du programme" << endl;

		else cout << "Echec de l'authentification\nAbandon..." << endl;      //Sinon
		
		exit(0);
}

int main() {
	
	signal(SIGTRAP, authentification);
	__asm__("int3");	 

   return 1;
}
