Commit | Line | Data |
---|---|---|
c9987f3b LM |
1 | #include "debug.h" |
2 | ||
3 | #include "code.h" | |
4 | ||
5 | /* concatenate code */ | |
6 | ||
7 | int codcat (char *dst, size_t n, char *src) | |
8 | { | |
9 | while ((*dst != 0) && (n > 0)) { | |
10 | n--; | |
11 | dst++; | |
12 | } | |
13 | ||
14 | return (n > 0) ? codcpy (dst, n, src) : -1; | |
15 | } | |
16 | ||
17 | /* compare 2 codes */ | |
18 | ||
19 | int codcmp (char *cod1, char *cod2) | |
20 | { | |
21 | int i = -1; | |
22 | ||
23 | do { | |
24 | i++; | |
25 | if (cod1[i] != cod2[i]) { | |
26 | return (cod1[i] < cod2[i]) ? -1 : 1; | |
27 | } | |
28 | } while (cod1[i] != 0); | |
29 | ||
30 | return 0; | |
31 | } | |
32 | ||
33 | /* copy code */ | |
34 | ||
35 | int codcpy (char *dst, size_t n, char *src) | |
36 | { | |
37 | size_t i; | |
38 | ||
39 | for (i = 0; i < n; i++) { | |
40 | dst[i] = src[i]; | |
41 | if (src[i]== 0) { | |
42 | return i; | |
43 | } | |
44 | } | |
45 | VERBOSE (ERROR, printf ("Buffer too short\n")); | |
46 | ||
47 | return -1; | |
48 | } | |
49 | ||
50 | /* code length */ | |
51 | ||
52 | int codlen (char *code) | |
53 | { | |
54 | int i = 0; | |
55 | ||
56 | while (code[i] != 0) { | |
57 | i++; | |
58 | } | |
59 | ||
60 | return i; | |
61 | } | |
62 | ||
63 | // vim: ts=4 sw=4 et |