From d0e3b07ce2afee76e3db059b99ed74b54c32d104 Mon Sep 17 00:00:00 2001 From: Patrick Neumann Date: Mon, 18 Jun 2018 09:32:53 +0200 Subject: [PATCH] added english source and (old) german exe --- manipulate_hosts.c | 112 +++++++++++++++++++++++++++++++++++++++++++ manipulate_hosts.exe | Bin 0 -> 27383 bytes 2 files changed, 112 insertions(+) create mode 100755 manipulate_hosts.c create mode 100755 manipulate_hosts.exe diff --git a/manipulate_hosts.c b/manipulate_hosts.c new file mode 100755 index 0000000..3922835 --- /dev/null +++ b/manipulate_hosts.c @@ -0,0 +1,112 @@ +/* + * manipulate_hosts.c + * + * author: Patrick Neumann + * version: 1.0 (02.11.2010) + * + * compile under (with): + * - linux (http://gcc.gnu.org/) + * - windows (http://www.mingw.org/) + * - mac os x (work-in-progress) + * + * quick start guide: + * 1. ping "www.microsoft.com" before + * 2. run program + * 3. ping "www.microsoft.com" afterwards + * 4. compare outputs + * 5. execute the program again + * 6. now everything should be the same as before + * + * HINT: is not working on windows anymore because + * the anti virus tools from today detect that kind of modification! + * + */ + +#include +#include +#include // needed for the functions "strcpy", "strcat" und "strstr" +#define LINELENGTH 80 +#ifdef __unix__ + #include // needed for the function "access" + #define WRITE W_OK +#else + #include // needed for the function "access" + #define WRITE 02 +#endif + +int main(void) { + #ifdef __unix__ + char oldfile[50] = "/etc/"; + #else + char oldfile[50] = "C:\\WINDOWS\\system32\\drivers\\etc\\"; + #endif + char newfile[50]; + strcpy( newfile, oldfile ); + strcat( oldfile, "hosts" ); + strcat( newfile, "newhosts" ); + char newline[50] = "149.20.20.133 www.microsoft.com"; + FILE *quelle, *ziel; + char puffer[ LINELENGTH ]; + int counter = 0; + + // check if the source could be opened and be written (for the later "delete before rename") + if( access( oldfile, WRITE ) == -1 ) { + fprintf( stderr, "Will not be able to delete %s later.\n", oldfile ); + return EXIT_FAILURE; + } + + // open source + if( ( quelle=fopen( oldfile, "r" ) ) == NULL ) { + fprintf( stderr, "Can not open %s.\n", oldfile ); + return EXIT_FAILURE; + } + + // open target + if( ( ziel=fopen( newfile, "w" ) ) == NULL ) { + fprintf( stderr, "Can not open %s.\n", newfile ); + return EXIT_FAILURE; + } + + while( fgets( puffer, LINELENGTH, quelle ) ) { + // if text is not found, then ... + if( strstr( puffer, newline ) == 0 ) { + fputs( puffer, ziel ); + } + // if text is found, then ... + else { + counter++; + } + } + + // if counter unchanged, then ... + if( counter == 0 ) { + fputs( newline, ziel ); + fputs( "\n", ziel ); + printf( "The line \"%s\" was added to %s.\n", newline, oldfile ); + } + else { + printf( "The line \"%s\" has been removed from %s.\n", newline, oldfile ); + } + + // close both files before deleting / renaming + fclose(quelle); + fclose(ziel); + + // delete original + if( ( remove( oldfile ) ) == -1 ) { + fprintf( stderr, "Error while deleting %s.\n", oldfile ); + return EXIT_FAILURE; + } + + // rename manupulated copy to original + if( ( rename( newfile, oldfile ) ) == -1 ) { + fprintf( stderr, "Error while renaming %s.\n", newfile ); + return EXIT_FAILURE; + } + + // so that the console esp. under windows does not disappear with "speed of light" again ... + printf( "EXIT WITH RETURN..." ); + getchar(); + + return EXIT_SUCCESS; +} diff --git a/manipulate_hosts.exe b/manipulate_hosts.exe new file mode 100755 index 0000000000000000000000000000000000000000..4e345b10aa8ed3a9134abac11927f3a302163bee GIT binary patch literal 27383 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 QtbF@N=-ARb@?qis0LaahLjV8( literal 0 HcmV?d00001