} else if(argc > 1 && strcmp(argv[1],"nullderef")==0) {
volatile int *mem = 0;
*mem = 1;
+ } else if(argc > 2 && strcmp(argv[1],"crashme") == 0) {
+ volatile int *mem = (int*) atoi(argv[2]);
+ *mem = 1;
} else {
printf("%d\n", 0xffffff);
printf("%u\n", 0xffffffU);
printf("Trying to opendir .\n");
dir = opendir(".");
if(dir) {
- while((dent=readdir(dir))!=NULL)
- printf("\t[%s] %lu\n",dent->d_name,dent->d_ino);
+ printf("Success!\n");
+ while((dent=readdir(dir))!=NULL) {
+ struct stat statbuf;
+ stat(dent->d_name,&statbuf);
+ printf("\t[%s] %lu %i %i\n",dent->d_name,dent->d_ino,statbuf.st_ino,statbuf.st_dev);
+ }
+ if(errno != 0) { fprintf(stderr,"readdir errno: %d\n",errno); perror("readdir"); }
closedir(dir);
} else {
perror("opendir");
}
}
- printf("exiting\n");
+ {
+ char buf[1024];
+ memcpy(buf,"Hello, World",sizeof("Hello, World"));
+ printf("%s\n",buf);
+ }
+
+ {
+ /*long long ll = 0xdeadbeefdeadc0deLL;
+ long l = 0xdeadbeef;
+ unsigned char *tmp;
+
+ printf("long long: %lld %llX\n",ll,ll);
+ tmp = (char*)≪
+ for(i=0;i<sizeof(long long);i++) { printf("%X\n",tmp[i]); }
+
+ printf("long: %ld %lX\n",l,l);
+ tmp = (char*)&l;
+ for(i=0;i<sizeof(long);i++) { printf("%X\n",tmp[i]); }*/
+
+ long long rl(long long n);
+ long long l = rl(-1614907703);
+ printf("---> %lld \n",l);
+ if(l >=-64) printf("---> ERROR: %lld >= -64\n",l);
+ }
+
+ //printf("cwd: %s\n",getcwd(NULL,0));
+ //printf("isatty(0): %d\n",isatty(0));
+ //printf("exiting\n");
return 0;
}
+long long zero = 0;
+long long rl(long long n) { return n + zero; }
+
void suckram() {
int total = 0;
fprintf(stderr,"Eating up all available memory\n");