-
Notifications
You must be signed in to change notification settings - Fork 0
/
gregg_audit.c
110 lines (104 loc) · 3.71 KB
/
gregg_audit.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
/*============================[[ beg-code ]]============================*/
#include "gregg.h"
char
AUDIT_build_fancy (char c, char a_rc, char a_letter [LEN_SHORT], char b_fancy [LEN_FULL])
{
/*---(locals)-----------+-----+-----+-*/
char rce = -10;
char t [LEN_RECD] = "";
/*---(header)-------------------------*/
DEBUG_INPT yLOG_enter (__FUNCTION__);
/*---(defense)------------------------*/
DEBUG_INPT yLOG_point ("a_Letter" , a_letter);
--rce; if (a_letter == NULL) {
DEBUG_INPT yLOG_exitr (__FUNCTION__, rce);
return rce;
}
DEBUG_INPT yLOG_info ("a_Letter" , a_letter);
DEBUG_INPT yLOG_point ("b_fancy" , b_fancy);
--rce; if (b_fancy == NULL) {
DEBUG_INPT yLOG_exitr (__FUNCTION__, rce);
return rce;
}
/*---(end)----------------------------*/
if (c == 100) {
strlcat (b_fancy, BOLD_OFF, LEN_RECD);
DEBUG_INPT yLOG_exit (__FUNCTION__);
return 0;
}
/*---(start/prefix)-------------------*/
if (c == 0) strlcpy (b_fancy, "" , LEN_RECD);
else strlcat (b_fancy, "·", LEN_RECD);
/*---(success)------------------------*/
if (a_rc >= 0) {
if (c == 0) strlcat (b_fancy, BOLD_GRN, LEN_RECD);
strlcat (b_fancy, a_letter, LEN_RECD);
}
/*---(fail)---------------------------*/
else {
strlcat (b_fancy, BOLD_ERR, LEN_RECD);
strlcat (b_fancy, a_letter, LEN_RECD);
strlcat (b_fancy, BOLD_OFF, LEN_RECD);
strlcat (b_fancy, BOLD_GRN, LEN_RECD);
}
/*---(complete)-----------------------*/
DEBUG_INPT yLOG_exit (__FUNCTION__);
return 0;
}
char
AUDIT_gregg_outline (char a_gregg [LEN_TITLE], char r_fancy [LEN_FULL])
{
/*---(locals)-----------+-----+-----+-*/
char rce = -10;
char rc = 0;
uchar x_gregg [LEN_TITLE] = "";
char *p = NULL;
char *q = "·";
char *r = NULL;
short n = 0;
char c = 0;
char x_fail = '-';
/*---(header)-------------------------*/
DEBUG_INPT yLOG_enter (__FUNCTION__);
/*---(defense)------------------------*/
DEBUG_INPT yLOG_point ("a_gregg" , a_gregg);
--rce; if (a_gregg == NULL) {
DEBUG_INPT yLOG_exitr (__FUNCTION__, rce);
return rce;
}
DEBUG_INPT yLOG_point ("r_fancy" , r_fancy);
--rce; if (r_fancy == NULL) {
DEBUG_INPT yLOG_exitr (__FUNCTION__, rce);
return rce;
}
/*---(prepare)------------------------*/
strlcpy (x_gregg, a_gregg, LEN_TITLE);
/*---(begin parse)--------------------*/
p = strtok_r (x_gregg, q, &r);
/*---(walk letters)-------------------*/
--rce; while (p != NULL) {
/*---(find letter)-----------------*/
DEBUG_INPT yLOG_info ("p" , p);
n = TABLE_letter_by_name (p, LTRS_NORM, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
DEBUG_INPT yLOG_value ("current" , n);
if (n < 0) x_fail = 'y';
/*---(fancify)---------------------*/
AUDIT_build_fancy (c, n, p, r_fancy);
/*---(next)------------------------*/
++c;
p = strtok_r (NULL , q, &r);
DEBUG_INPT yLOG_point ("p" , p);
/*---(done)------------------------*/
}
/*---(complete)-----------------------*/
AUDIT_build_fancy (100, 0, "", r_fancy);
/*---(check trouble)------------------*/
DEBUG_INPT yLOG_char ("x_fail" , x_fail);
--rce; if (x_fail == 'y') {
DEBUG_INPT yLOG_exitr (__FUNCTION__, rce);
return rce;
}
/*---(complete)-----------------------*/
DEBUG_INPT yLOG_exit (__FUNCTION__);
return 0;
}