1 #ifndef __LIBNAJI_H__NAJI__ 2 #define __LIBNAJI_H__NAJI__ 3 4 /* --------- */ 5 /* libnaji.h */ 6 /* --------- */ 7 8 /* libnaji header file */ 9 10 /* this .h file is a part */ 11 /* of libnaji version 0.6.4 */ 12 13 /* libnaji is based on */ 14 /* the original najitool */ 15 16 /* both najitool and libnaji */ 17 /* are public domain and are */ 18 /* made by the same author */ 19 /* please read license.txt */ 20 21 /* made by NECDET COKYAZICI */ 22 23 #include <math.h> 24 #include <time.h> 25 #include <ctype.h> 26 #include <stdio.h> 27 #include <stdlib.h> 28 #include <string.h> 29 #include <limits.h> 30 #include <errno.h> 31 32 /* Begin MP3 Code, Written By ARKAINO, formally known as YEHRCL */ 33 34 #define TRUE 1 35 #define FALSE 0 36 #define BUFSIZE 2000 37 #define LITTLE_END(x) ( ((x & 0xff000000) >> 24) | \ 38 ((x & 0x00ff0000) >> 8) | \ 39 ((x & 0x0000ff00) << 8) | \ 40 ((x & 0x000000ff) << 24) ) 41 42 /* this is for suppressing the last bit on each byte */ 43 #define LITTLE_MESS(x) ( ((x & 0x0000007f) | ((x & 0x00000100) >> 1)) | \ 44 (((x & 0x00007f00) | ((x & 0x00010000) >> 1)) >> 1) | \ 45 (((x & 0x007f0000) | ((x & 0x01000000) >> 1)) >> 2) | \ 46 ((x & 0x7f000000) >> 3) ) 47 48 enum fileperms {READ_ONLY, READ_WRITE}; 49 50 51 #define GET_MPEG(x) (x & 0x08) 52 #define GET_LAYER(x) (x & 0x06) 53 #define GET_PROT(x) (x & 0x01) 54 #define GET_BRATE(x) (x & 0xf0) 55 #define GET_FREQ(x) (x & 0x0c) 56 #define GET_PADD(x) (x & 0x02) 57 58 enum ids { 59 MPEG1=0, PADDING, PROTECTED, LAYER3, 60 BRATE32, BRATE40, BRATE48, BRATE56, 61 BRATE64, BRATE80, BRATE96, BRATE112, 62 BRATE128, BRATE160, BRATE192, BRATE224, 63 BRATE256, BRATE320, FREQ44, FREQ48, FREQ32, 64 BAD, BLANK 65 }; 66 67 /* not all fields are needed, but we declare them for further use */ 68 struct frame_header { 69 enum ids id, layer, protected, 70 bitrate, padding, frequency; 71 int size; 72 73 }; 74 75 /* for printing the user the file attributes, etc */ 76 struct idtable { 77 char string[16]; 78 unsigned int value; 79 80 }; 81 82 extern struct idtable idindex[22]; 83 84 struct id3v1 { 85 char title[31], artist[31], album[31], 86 year[5], comment[30]; 87 int track; 88 89 }; 90 91 struct id3v2 { 92 char * title, *artist, *album, *year, *track, *comment; 93 int size; 94 95 }; 96 97 extern char genres [127][18]; 98 99 enum id3version {ID3V1, ID3V2, BADVERSION}; 100 101 struct fileinfo { 102 FILE * fd; 103 struct id3v1 tag; 104 struct id3v2 tag2; 105 struct frame_header header; 106 enum id3version tagver; 107 }; 108 109 110 111 /* 112 * Calculates the frame size from buffer and stores the header data. 113 * Returns the frame size in bytes, FALSE otherwise. 114 * TODO: CRC support?? 115 */ 116 int mp3header (char const * buffer, size_t count, struct frame_header * header); 117 118 /* 119 * Checks for ID3v1 data in fd and writes it to tag. 120 * Returns FALSE in case an id3v1 tag isn't found, TRUE otherwise. 121 */ 122 int mp3id3v1 (FILE * fd, struct id3v1 * tag); 123 124 /* 125 * Checks for ID3v2 data in fd and writes it to tag. 126 * Returns FALSE in case an id3v2 tag isn't found, TRUE otherwise. 127 */ 128 int mp3id3v2 (FILE * fd, struct id3v2 * tag); 129 130 /* 131 * Looks for id3v1 in fd and updates it according to args. 132 * Returns TRUE if succeeded, FALSE otherwise. 133 */ 134 int mp3editv1 (FILE * fd, char*const* args, int const numarg); 135 136 /* 137 * Prints the name's mp3 file info. 138 */ 139 void mp3info (char *name); 140 141 /* 142 * Splits name's file from start to end and writes that part to output. 143 */ 144 void mp3split (char const * name, char const * output, 145 unsigned int const start, unsigned int const end); 146 147 /* 148 * Updates the mp3 tag info of name's file. 149 */ 150 void mp3editag (char const * name, char* const* args, int const numarg); 151 152 153 /* End MP3 Code, Written By ARKAINO, formally known as YEHRCL */ 154 155 156 157 #ifndef naji_tolower 158 #define naji_tolower(a) if ( ( (a) >= 'A') && ( (a) <= 'Z') ) a += 32; 159 #endif 160 161 #ifndef naji_toupper 162 #define naji_toupper(a) if ( ( (a) >= 'a') && ( (a) <= 'z') ) a -= 32; 163 #endif 164 165 /* the random number initilizer macro */ 166 /* using this before using the rndrange() */ 167 /* macros is highly recommended because it */ 168 /* makes rndrange produce a lot better */ 169 /* random numbers, you only need to use */ 170 /* it once. */ 171 172 #ifndef rndinit 173 #define rndinit() srand(time(NULL)) 174 #endif 175 176 #ifndef rndrange 177 #define rndrange(start, end) ( rand() % ( (end) + (start) ) ) 178 #endif 179 180 #ifndef BYTE 181 #define BYTE unsigned char 182 #endif 183 184 #ifndef WORD 185 #define WORD unsigned short 186 #endif 187 188 #ifndef DWORD 189 #define DWORD unsigned long 190 #endif 191 192 #ifndef UCHAR 193 #define UCHAR unsigned char 194 #endif 195 196 #ifndef SHORT 197 #define USHORT unsigned short 198 #endif 199 200 #ifndef UINT 201 #define UINT unsigned int 202 #endif 203 204 #ifndef ULONG 205 #define ULONG unsigned long 206 #endif 207 208 #ifndef SCHAR 209 #define SCHAR signed char 210 #endif 211 212 #ifndef SSHORT 213 #define SSHORT signed short 214 #endif 215 216 #ifndef SINT 217 #define SINT signed int 218 #endif 219 220 #ifndef SLONG 221 #define SLONG signed long 222 #endif 223 224 #ifndef FLOAT 225 #define FLOAT float 226 #endif 227 228 #ifndef DOUBLE 229 #define DOUBLE double 230 #endif 231 232 typedef unsigned char byte; 233 typedef unsigned short word; 234 typedef unsigned long dword; 235 236 typedef unsigned char uchar; 237 typedef unsigned short ushort; 238 typedef unsigned int uint; 239 typedef unsigned long ulong; 240 241 typedef signed char schar; 242 typedef signed short sshort; 243 typedef signed int sint; 244 typedef signed long slong; 245 246 #ifndef naji_max 247 #define naji_max(a,b) ( ( (a) > (b) ) ? (a):(b) ) 248 #endif 249 250 #ifndef naji_min 251 #define naji_min(a,b) ( ( (a) < (b) ) ? (a):(b) ) 252 #endif 253 254 #ifndef PI 255 #define PI 3.14159265358979323846 256 #endif 257 258 #ifndef najinew 259 #define najinew(Type, HowMany) (Type *) malloc(HowMany * sizeof(Type)); 260 #endif 261 262 #ifndef newchar 263 #define newchar(amount) najinew(char, amount); 264 #endif 265 266 #ifndef newshort 267 #define newshort(amount) najinew(short, amount); 268 #endif 269 270 #ifndef newint 271 #define newint(amount) najinew(int, amount); 272 #endif 273 274 #ifndef newlong 275 #define newlong(amount) najinew(long, amount); 276 #endif 277 278 #ifndef newuchar 279 #define newuchar(amount) najinew(UCHAR, amount); 280 #endif 281 282 #ifndef newshort 283 #define newshort(amount) najinew(USHORT, amount); 284 #endif 285 286 #ifndef newuint 287 #define newuint(amount) najinew(UINT, amount); 288 #endif 289 290 #ifndef newulong 291 #define newulong(amount) najinew(ULONG, amount); 292 #endif 293 294 #ifndef newfloat 295 #define newfloat(amount) najinew(FLOAT, amount); 296 #endif 297 298 #ifndef newdouble 299 #define newdouble(amount) najinew(DOUBLE amount); 300 #endif 301 302 #ifndef exitnull 303 #define exitnull(item) \ 304 if ( ( (item) == NULL ) ) \ 305 {\ 306 fprintf(stderr, "\n\nNULL pointer error\n\n"); exit(8);\ 307 } 308 #endif 309 310 #ifndef loop 311 #define loop while(1) 312 #endif 313 314 #ifndef endloop 315 #define endloop break 316 #endif 317 318 /* my version of the FALSE, TRUE defines */ 319 /* to avoid clashes with other libraries and programs */ 320 321 #ifndef NAJI_FALSE 322 #define NAJI_FALSE 0 323 #endif 324 325 #ifndef NAJI_TRUE 326 #define NAJI_TRUE 1 327 #endif 328 329 extern FILE* naji_input; 330 extern FILE* naji_input2; 331 extern FILE* naji_output; 332 extern FILE* naji_output2; 333 extern FILE* naji_bmp_out; 334 extern FILE* naji_edit; 335 336 337 struct najiline { 338 int len; 339 long pos; 340 }; 341 342 343 char *addtolinebuf(char c, char *line_buf, 344 int cur_pos, int *cur_size, int block_size); 345 346 char * chstr_line(char *line, char *str, char *newstr); 347 char * s_ay(); 348 char * s_ayinkaci(); 349 char * s_bugun(); 350 char * s_dayofmon(); 351 char * s_month(); 352 char * s_systemdt(); 353 char * s_today(); 354 char * s_year(); 355 char * s_yil(); 356 char * skipstr_line(char *line, char *str); 357 358 void bblensorts(FILE * sourcefile, FILE * destfile, 359 struct najiline *plines, struct najiline *plineend); 360 361 void bblensortl(FILE * sourcefile, FILE * destfile, 362 struct najiline *plines, struct najiline *plineend); 363 364 void writesorted(FILE *sourcefile, FILE *destfile, struct najiline *plines, 365 struct najiline *plineend, int lflong, char lastchar); 366 367 int readforsort(FILE * sourcefile, FILE * destfile, 368 struct najiline **pplines, struct najiline **pplineend, char *lastchar); 369 370 371 int find_line(const char *line, const char *str); 372 int findi_line(const char *line, const char *str); 373 int isequal(char *str, char *tempbuf, int len, int start_pos); 374 int naji_a2e(int a); 375 int naji_e2a(int a); 376 int naji_e2a_unicode(int a); 377 int randkill(char *name); 378 int rngtotal(int start, int end); 379 int swrdcoun(const char *string); 380 int wrdcount(char *namein); 381 int zerokill(char *name); 382 long najedsize(void); 383 long naji_filesize(FILE *file); 384 long najin2size(void); 385 long najinsize(void); 386 long najout2size(void); 387 long najoutsize(void); 388 389 uchar uc_rand_range(uchar start, uchar end); 390 uint ui_rand_range(uint start, uint end); 391 ulong ul_rand_range (ulong start, ulong end); 392 393 unsigned char ascii_to_ebcdic_char(const unsigned char a); 394 unsigned char ebcdic_to_ascii_char(const unsigned char a); 395 396 unsigned long howl(char *namein); 397 unsigned long longl(char *namein); 398 399 void _8bit256(char *nameout, unsigned long rep); 400 void _bigascii(char *string, FILE *stream); 401 void add_entry(char *entry); 402 void add_entry_html(char *entry); 403 void add_entry_html_email(char *entry); 404 void add_entry_html_link(char *entry); 405 void addim(int max_times); 406 void addline(char *namein, char *nameout, char *text_to_add, unsigned long line_number); 407 408 /* WARNING: be very careful with this */ 409 /* function, it makes a lot of files */ 410 411 /* you give it the size in bytes of every */ 412 /* possible byte combination that you want */ 413 414 void allfiles(unsigned long int size); 415 void allfiles_genfile(char *filename, short file_contents[], unsigned long int filesize); 416 void allfiles_genfilename(short a, short b, short filecontents[], unsigned long int filesize); 417 void allfiles_main(short a, short b, short *buffer, unsigned long int size); 418 419 420 421 void allbmp16(void); 422 void allbmp16_genfile(char *filename, short file_contents[], unsigned long int filesize); 423 void allbmp16_genfilename(short a, short b, short filecontents[], unsigned long int filesize); 424 void allbmp16_main(short a, short b, short *buffer, unsigned long int size); 425 426 427 428 429 void arab2eng(char *namein, char *nameout); 430 void asc2ebc(char *namein, char *nameout); 431 void asctable(void); 432 void ay(); 433 void ayinkaci(); 434 void bigascif(char *string, char *nameout); 435 void bigascii(char *string); 436 void bin2c(char *namein, char *nameout, char *array_name); 437 void bin2hexi(char *namein, char *nameout); 438 void bin2text(char *namein, char *nameout); 439 void blanka(char *namein, char *nameout); 440 void bmpout(char *nameout); 441 void bmpoutclose(void); 442 void bremline(char *str, char *namein, char *nameout); 443 void bugun(); 444 void bytsplit(char *namein, unsigned long peice_size); 445 void cat_head(char *namein, int n_lines); 446 void cat_tail(char *namein, int n_lines); 447 void cat_text(char *namein); 448 void cat_text_faster(char *namein); 449 void cat_text_faster_stdin(void); 450 void cat_text_fastest(char *namein); 451 void cat_text_fastest_stdin(void); 452 void cat_text_stdin(void); 453 void catrandl(char *namein); 454 void ccompare(char *namein, char *namein2); 455 void cfind(char *namein, char *str); 456 void cfindi(char *namein, char *str); 457 void charaftr(char *namein, char *nameout, char ch); 458 void charbefr(char *namein, char *nameout, char ch); 459 void charfile(char *nameout, unsigned long int size, int c); 460 void charwrap(int w, char *namein, char *nameout); 461 void charsort(char *namein, char *nameout); 462 void chchar(char *namein, char *nameout, char original, char changed); 463 void chchars(char *namein, char *nameout, char *original_chars, char *changed_chars); 464 void check_ps(void); 465 void chstr(char *namein, char *nameout, char *str, char *newstr); 466 void cm_to_feet(void); 467 void cm_to_inches(void); 468 void cm_to_km(void); 469 void cm_to_meters(void); 470 void cm_to_miles(void); 471 void cm_to_mm(void); 472 void cm_to_yards(void); 473 void coffset(char *namein, long startpos, long endpos); 474 void compare(char *namein, char *namein2); 475 void compfile(char *namein, char *namein2, int cont_on_diff); 476 void copyfile(char *namein, char *nameout); 477 void copyoffs(char *namein, long startpos, long endpos, char *nameout); 478 void copyrep(unsigned long int howmany); 479 void cpfroml(unsigned long line, char *namein, char *nameout); 480 void cptiline(unsigned long line, char *namein, char *nameout); 481 void datetime(void); 482 void dayofmon(); 483 void dos2unix(char *namein, char *nameout); 484 void downlist(char *namein, char *nameout); 485 void dumpoffs(char *namein, long startpos, long endpos); 486 void e2ahtml(char *namein, char *nameout); 487 void ebc2asc(char *namein, char *nameout); 488 void elite_char_fprint(char a, FILE *out); 489 void elite_char_print(char a); 490 void endnaji(int error_level); 491 void eng2arab(char *namein, char *nameout); 492 void engnum(void); 493 void eremline(char *str, char *namein, char *nameout); 494 void errtext(void); 495 void f2lower(char *namein, char *nameout); 496 void f2upper(char *namein, char *nameout); 497 void feet_to_cm(void); 498 void feet_to_inches(void); 499 void feet_to_km(void); 500 void feet_to_meters(void); 501 void feet_to_miles(void); 502 void feet_to_mm(void); 503 void feet_to_yards(void); 504 void filbreed(char *namein, char *namein2, char *nameout); 505 void file2bin(char *namein, char *nameout); 506 void file2dec(char *namein, char *nameout); 507 void file2hex(char *namein, char *nameout); 508 void filechop(long copytil, char *namein, char *nameout, char *nameout2); 509 void filejoin(char *namein, char *namein2, char *nameout); 510 void fillfile(char *named, char c); 511 void find_basis(char *namein, char *str, int sensitive, int show_matches); 512 void find(char *namein, char *str); 513 void findi(char *namein, char *str); 514 void flipcopy(char *namein, char *nameout); 515 void fprint_16_bit_bin(FILE *out, int num); 516 void fprint_8_bit_bin(FILE *out, char num); 517 void freverse(char *namein, char *nameout); 518 void fswpcase(char *namein, char *nameout); 519 void ftothe(char *namein, char *nameout); 520 void gbsplit(char *namein, unsigned long peice_size); 521 void getlinks(char *namein, char *nameout); 522 void get_password(void); 523 void get_strength(void); 524 void get_datetime(); 525 void gdivide(float start, float end); 526 void gigabyte(unsigned long i); 527 void gminus(int start, int end); 528 void gplus(int start, int end); 529 void gtimes(int start, int end); 530 void hexaddim(); 531 void hexicat(char *namein); 532 void hexierr(void); 533 void hilist(char *namein, char *nameout); 534 void hmaker(char *namein); 535 void hmakerf(char *namein, char *nameout); 536 void howline(char *namein); 537 void html2txt(char *namein, char *nameout); 538 void htmlfast(char *namein, char *nameout); 539 void inches_to_cm(void); 540 void inches_to_feet(void); 541 void inches_to_km(void); 542 void inches_to_meters(void); 543 void inches_to_miles(void); 544 void inches_to_mm(void); 545 void inches_to_yards(void); 546 void istrael(char *str, int pos, char *namein, char *nameout); 547 void istreml(char *str, char *namein, char *nameout); 548 void kbsplit(char *namein, unsigned long peice_size); 549 void kiterr(void); 550 void kitten(char *namein); 551 void kitten_stdin(void); 552 void km_to_cm(void); 553 void km_to_feet(void); 554 void km_to_inches(void); 555 void km_to_meters(void); 556 void km_to_miles(void); 557 void km_to_mm(void); 558 void km_to_yards(void); 559 void lcharvar(char *str); 560 void lcvfiles(char *namein); 561 void leetfile(char *namein, char *nameout); 562 void leetstr(char *string); 563 void length(void); 564 void lensort_basis(char whichone, char *namein, char *nameout); 565 void lensortl(char *namein, char *nameout); 566 void lensorts(char *namein, char *nameout); 567 void lineback(char *namein); 568 void linesnip(int bytes, char *namein, char *nameout); 569 void listdigt(unsigned int size, char *nameout); 570 void listlowr(unsigned int size, char *nameout); 571 void listprnt(unsigned int size, char *nameout); 572 void listuppr(unsigned int size, char *nameout); 573 void makarray(char *namein, char *nameout, char *namevar); 574 void mathgame(void); 575 void mbsplit(char *namein, unsigned long peice_size); 576 void mergline(char *namein, char *namein2, char *nameout, char *beforeline, char *afterline); 577 void meters_to_cm(void); 578 void meters_to_feet(void); 579 void meters_to_inches(void); 580 void meters_to_km(void); 581 void meters_to_miles(void); 582 void meters_to_mm(void); 583 void meters_to_yards(void); 584 void miles_to_cm(void); 585 void miles_to_feet(void); 586 void miles_to_inches(void); 587 void miles_to_km(void); 588 void miles_to_meters(void); 589 void miles_to_mm(void); 590 void miles_to_yards(void); 591 void mjoin(char *namein_original_filename, char *nameout_joined_output_file); 592 void mkpatch(char *original, char *patched, char *patchfile); 593 void mm_to_cm(void); 594 void mm_to_feet(void); 595 void mm_to_inches(void); 596 void mm_to_km(void); 597 void mm_to_meters(void); 598 void mm_to_miles(void); 599 void mm_to_yards(void); 600 void month(); 601 void n2ch(char ch, char *namein, char *nameout); 602 void n2str(char *str, char *namein, char *nameout); 603 void najcrypt(void); 604 void najed(char *named); 605 void najedclose(void); 606 void naji_(int a, FILE *stream); 607 void naji_0(int a, FILE *stream); 608 void naji_1(int a, FILE *stream); 609 void naji_2(int a, FILE *stream); 610 void naji_3(int a, FILE *stream); 611 void naji_4(int a, FILE *stream); 612 void naji_5(int a, FILE *stream); 613 void naji_6(int a, FILE *stream); 614 void naji_7(int a, FILE *stream); 615 void naji_8(int a, FILE *stream); 616 void naji_9(int a, FILE *stream); 617 void naji_a(int a, FILE *stream); 618 void naji_addim(unsigned long start, unsigned long end, unsigned long addby); 619 void naji_ascii(char *string, int i, int a, FILE *stream); 620 void naji_ascii_aposclose(int a, FILE *stream); 621 void naji_ascii_aposopen(int a, FILE *stream); 622 void naji_ascii_bslash(int a, FILE *stream); 623 void naji_ascii_colon(int a, FILE *stream); 624 void naji_ascii_coma(int a, FILE *stream); 625 void naji_ascii_exclaimark(int a, FILE *stream); 626 void naji_ascii_fslash(int a, FILE *stream); 627 void naji_ascii_lessthan(int a, FILE *stream); 628 void naji_ascii_morethan(int a, FILE *stream); 629 void naji_ascii_numsign(int a, FILE *stream); 630 void naji_ascii_paranclose(int a, FILE *stream); 631 void naji_ascii_paranopen(int a, FILE *stream); 632 void naji_ascii_period(int a, FILE *stream); 633 void naji_ascii_pipe(int a, FILE *stream); 634 void naji_ascii_semicolon(int a, FILE *stream); 635 void naji_ascii_underscore(int a, FILE *stream); 636 void naji_b(int a, FILE *stream); 637 void naji_bmp(void); 638 void naji_bmpheader(void); 639 void naji_c(int a, FILE *stream); 640 void naji_calc(void); 641 void naji_credits(void); 642 void naji_d(int a, FILE *stream); 643 void naji_database(void); 644 void naji_dec(void); 645 void naji_del_gen_unicode_html_pages(void); 646 void naji_e(int a, FILE *stream); 647 void naji_enc(void); 648 void naji_f(int a, FILE *stream); 649 void naji_g(int a, FILE *stream); 650 void naji_gen_unicode_html_pages(void); 651 void naji_genlic(); 652 void naji_h(int a, FILE *stream); 653 void naji_hexaddim(unsigned long start, unsigned long end, unsigned long addby); 654 void naji_html_database(void); 655 void naji_i(int a, FILE *stream); 656 void naji_j(int a, FILE *stream); 657 void naji_k(int a, FILE *stream); 658 void naji_l(int a, FILE *stream); 659 void naji_license(void); 660 char **naji_lines_alloc(unsigned long howmany, unsigned long howlong); 661 void naji_lines_free(char **buffer, unsigned long howmany); 662 void naji_lines_load(char *namein, char **buffer, unsigned long howmany, unsigned long howlong); 663 void naji_lines_backwards_print(char **buffer, unsigned long howmany); 664 void naji_lines_print(char **buffer, unsigned long howmany); 665 void naji_lines_random_print(char **buffer, int howmany); 666 void naji_m(int a, FILE *stream); 667 void naji_n(int a, FILE *stream); 668 void naji_o(int a, FILE *stream); 669 void naji_p(int a, FILE *stream); 670 void naji_q(int a, FILE *stream); 671 void naji_r(int a, FILE *stream); 672 void naji_s(int a, FILE *stream); 673 void naji_t(int a, FILE *stream); 674 void naji_u(int a, FILE *stream); 675 void naji_unicode_html_end(void); 676 void naji_unicode_html_header(int n); 677 void naji_v(int a, FILE *stream); 678 void naji_w(int a, FILE *stream); 679 void naji_x(int a, FILE *stream); 680 void naji_y(int a, FILE *stream); 681 void naji_z(int a, FILE *stream); 682 void najifgets(char *buf, int size, FILE *input); 683 void najin(char *namein); 684 void najin2(char *namein2); 685 void najin2close(void); 686 void najinclose(void); 687 void najintext(char *namein); 688 void najirle(char *namein, char *nameout); 689 void najisum(char *namein); 690 void najout(char *nameout); 691 void najout2(char *nameout2); 692 void najout2close(void); 693 void najoutclose(void); 694 void nextpage(void); 695 void longline(char *namein); 696 void numlines(char *namein, char *nameout); 697 void onlalnum(char *namein, char *nameout); 698 void onlalpha(char *namein, char *nameout); 699 void onlcntrl(char *namein, char *nameout); 700 void onldigit(char *namein, char *nameout); 701 void onlgraph(char *namein, char *nameout); 702 void onllower(char *namein, char *nameout); 703 void onlprint(char *namein, char *nameout); 704 void onlpunct(char *namein, char *nameout); 705 void onlspace(char *namein, char *nameout); 706 void onlupper(char *namein, char *nameout); 707 void onlxdigt(char *namein, char *nameout); 708 void onlycat(char *namein, char *toshow); 709 void onlychar(char *namein, char *nameout, char *toshow); 710 void patch(char *named); 711 void printftx(char *namein, char *nameout); 712 void putlines(char *namein, char *nameout, char *beforeline, char *afterline); 713 void qcrypt(char *namein, char *nameout); 714 void qpatch(char *named, char *patch_file); 715 void rand_init(void); 716 void rcharvar(char *str); 717 void rcvfiles(char *namein); 718 void rbcafter(char *namein, char *nameout); 719 void rbcbefor(char *namein, char *nameout); 720 void remline(char *str, char *namein, char *nameout); 721 void removel(char *namein, char *nameout, unsigned long line_number); 722 void repcat(char *namein, unsigned int repeat); 723 void repcatpp(char *namein, unsigned int start); 724 void repchar(char *namein, char *nameout, unsigned int repeat); 725 void repcharp(char *namein, char *nameout, unsigned int start); 726 void reperr(unsigned int repeat); 727 void replacel(char *namein, char *nameout, char *str, unsigned long line_number); 728 int return_random(int max); 729 void revcat(char *namein); 730 void revlines(char *namein, char *nameout); 731 void rndbfile(char *nameout, unsigned long int size); 732 void rndbsout(unsigned long int size); 733 void rndffill(char *named); 734 void rndlines(char *namein); 735 void rndtfile(char *nameout, unsigned long int size); 736 void rndtsout(unsigned long int size); 737 void rngtotal_test(); 738 void rrrchars(char *namein, char *nameout, int start, int end); 739 void rstrach(int len, char *namein, char *nameout); 740 void rstrbch(int len, char *namein, char *nameout); 741 void rtcafter(char *namein, char *nameout); 742 void rtcbefor(char *namein, char *nameout); 743 void saat(); 744 void saatarih(void); 745 void safegets(char *buf, int size); 746 void sflpcase(char *str); 747 void show_16_bit_bin(int num); 748 void show_8_bit_bin(char num); 749 void showline(char *namein, unsigned long line); 750 void shuffle_int_array(int *array, int size); 751 void skipcat(char *namein, char *toskip); 752 void skipchar(char *namein, char *nameout, char *toskip); 753 void skiperr(char *toskip); 754 void skipstr(char *namein, char *nameout, char *str); 755 void skpalnum(char *namein, char *nameout); 756 void skpalpha(char *namein, char *nameout); 757 void skpcntrl(char *namein, char *nameout); 758 void skpdigit(char *namein, char *nameout); 759 void skpgraph(char *namein, char *nameout); 760 void skplower(char *namein, char *nameout); 761 void skpprint(char *namein, char *nameout); 762 void skppunct(char *namein, char *nameout); 763 void skpspace(char *namein, char *nameout); 764 void skpupper(char *namein, char *nameout); 765 void skpxdigt(char *namein, char *nameout); 766 int sortcomp(const void *a, const void *b); 767 void sort(char *namein); 768 void sortlast(char *namein); 769 void sort_basis(char *namein); 770 void sp2ce2sp(char c, char *namein, char *nameout); 771 void sp2re2sp(char *namein, char *nameout); 772 void spyramid(char *str); 773 void sreverse(char *str); 774 void sstrfile(unsigned long int strictsize, char *string); 775 void stolower(char *str); 776 void stoupper(char *str); 777 void str_move_left(char * s, int n); 778 void strachar(char *str, char *namein, char *nameout); 779 void strbchar(char *str, char *namein, char *nameout); 780 void strbline(char *namein, char *nameout, char *str); 781 void streline(char *namein, char *nameout, char *str); 782 void strfile(char *nameout, unsigned long int howmany, char *string); 783 void swapfeb(char *namein, char *namein2, char *nameout); 784 void systemdt(); 785 void tabspace(int spaces, char *namein, char *nameout); 786 void telltime(); 787 void today(); 788 void tolowers(char *str); 789 void tolowersn(char *str, int n); 790 void touppers(char *str); 791 void touppersn(char *str, int n); 792 void tothe(char *str); 793 void ttt(void); 794 void ttt_computermove(void); 795 void ttt_displayboard(void); 796 void ttt_displaywinner(void); 797 char ttt_gameover(void); 798 void ttt_humanmove(void); 799 void ttt_instructions(void); 800 void turnum(void); 801 void txt2html(char *namein, char *nameout); 802 void unajirle(char *namein, char *nameout); 803 void unblanka(char *namein, char *nameout); 804 void unix2dos(char *namein, char *nameout); 805 void uudecode(char *namein, char *nameout); 806 void uuencode(char *namein, char *nameout); 807 void vowelwrd(char *str); 808 void weakrypt(const char *password, char *namein, char *nameout); 809 void wipe_pwd(void); 810 void wordline(char *namein, char *nameout); 811 void wordlist(short a, short b, unsigned int size, char *nameout); 812 void wordwrap(char *namein, char *nameout); 813 void yards_to_cm(void); 814 void yards_to_feet(void); 815 void yards_to_inches(void); 816 void yards_to_km(void); 817 void yards_to_meters(void); 818 void yards_to_miles(void); 819 void yards_to_mm(void); 820 void year(); 821 void yil(); 822 823 824 #endif /* __LIBNAJI_H__NAJI__ */ 825