Hex Artifact Content

Artifact e7698ed55df5f704d99c3f992d4cf686b37f4930:


0000: 2e 54 48 20 4c 43 5f 47 45 54 45 52 52 53 54 52  .TH LC_GETERRSTR
0010: 20 33 20 22 32 35 20 4f 63 74 20 30 34 22 20 22   3 "25 Oct 04" "
0020: 40 50 41 43 4b 41 47 45 5f 53 54 52 49 4e 47 40  @PACKAGE_STRING@
0030: 22 0a 2e 53 48 20 4e 41 4d 45 0a 6c 63 5f 67 65  "..SH NAME.lc_ge
0040: 74 65 72 72 73 74 72 20 5c 2d 20 52 65 74 72 69  terrstr \- Retri
0050: 65 76 65 20 61 20 68 75 6d 61 6e 20 72 65 61 64  eve a human read
0060: 61 62 6c 65 20 65 72 72 6f 72 20 6d 65 73 73 61  able error messa
0070: 67 65 2e 0a 0a 2e 53 48 20 53 59 4e 4f 50 53 49  ge....SH SYNOPSI
0080: 53 0a 2e 42 20 23 69 6e 63 6c 75 64 65 20 3c 6c  S..B #include <l
0090: 69 62 63 6f 6e 66 69 67 2e 68 3e 0a 2e 73 70 0a  ibconfig.h>..sp.
00a0: 2e 42 49 20 22 63 68 61 72 20 2a 6c 63 5f 67 65  .BI "char *lc_ge
00b0: 74 65 72 72 73 74 72 28 76 6f 69 64 29 3b 22 0a  terrstr(void);".
00c0: 0a 2e 53 48 20 44 45 53 43 52 49 50 54 49 4f 4e  ..SH DESCRIPTION
00d0: 0a 54 68 65 0a 2e 42 52 20 6c 63 5f 67 65 74 65  .The..BR lc_gete
00e0: 72 72 73 74 72 20 28 33 29 0a 66 75 6e 63 74 69  rrstr (3).functi
00f0: 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 73 74 72  on returns a str
0100: 69 6e 67 20 64 65 73 63 72 69 62 69 6e 67 20 74  ing describing t
0110: 68 65 20 6c 61 73 74 20 65 72 72 6f 72 20 63 6f  he last error co
0120: 64 65 20 73 65 74 2e 0a 0a 2e 53 48 20 45 58 41  de set....SH EXA
0130: 4d 50 4c 45 0a 2e 6e 66 0a 23 69 6e 63 6c 75 64  MPLE..nf.#includ
0140: 65 20 3c 6c 69 62 63 6f 6e 66 69 67 2e 68 3e 0a  e <libconfig.h>.
0150: 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62  #include <stdlib
0160: 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74  .h>.#include <st
0170: 64 69 6f 2e 68 3e 0a 0a 69 6e 74 20 6d 61 69 6e  dio.h>..int main
0180: 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20  (int argc, char 
0190: 2a 2a 61 72 67 76 29 20 7b 0a 09 69 6e 74 20 6c  **argv) {..int l
01a0: 63 5f 70 5f 72 65 74 2c 20 6c 63 5f 72 76 5f 72  c_p_ret, lc_rv_r
01b0: 65 74 3b 0a 09 63 68 61 72 20 2a 66 69 6c 65 6e  et;..char *filen
01c0: 61 6d 65 20 3d 20 4e 55 4c 4c 3b 0a 0a 09 6c 63  ame = NULL;...lc
01d0: 5f 72 76 5f 72 65 74 20 3d 20 6c 63 5f 72 65 67  _rv_ret = lc_reg
01e0: 69 73 74 65 72 5f 76 61 72 28 22 46 69 6c 65 22  ister_var("File"
01f0: 2c 20 4c 43 5f 56 41 52 5f 53 54 52 49 4e 47 2c  , LC_VAR_STRING,
0200: 0a 09 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 66                &f
0220: 69 6c 65 6e 61 6d 65 2c 20 27 66 27 29 3b 0a 0a  ilename, 'f');..
0230: 09 69 66 20 28 6c 63 5f 72 76 5f 72 65 74 20 21  .if (lc_rv_ret !
0240: 3d 20 30 29 20 7b 0a 09 09 66 70 72 69 6e 74 66  = 0) {...fprintf
0250: 28 73 74 64 65 72 72 2c 20 22 45 72 72 6f 72 20  (stderr, "Error 
0260: 72 65 67 69 73 74 65 72 69 6e 67 20 76 61 72 69  registering vari
0270: 61 62 6c 65 3a 20 25 73 2e 5c 5c 6e 22 2c 0a 09  able: %s.\\n",..
0280: 09 20 20 20 20 20 20 20 20 6c 63 5f 67 65 74 65  .        lc_gete
0290: 72 72 73 74 72 28 29 29 3b 0a 09 09 72 65 74 75  rrstr());...retu
02a0: 72 6e 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29  rn(EXIT_FAILURE)
02b0: 3b 0a 09 7d 0a 0a 09 6c 63 5f 70 5f 72 65 74 20  ;..}...lc_p_ret 
02c0: 3d 20 6c 63 5f 70 72 6f 63 65 73 73 28 61 72 67  = lc_process(arg
02d0: 63 2c 20 61 72 67 76 2c 20 22 65 78 61 6d 70 6c  c, argv, "exampl
02e0: 65 22 2c 20 4c 43 5f 43 4f 4e 46 5f 41 50 41 43  e", LC_CONF_APAC
02f0: 48 45 2c 0a 09 20 20 20 20 20 20 20 20 20 20 20  HE,..           
0300: 20 20 20 20 20 20 20 20 20 20 20 4e 55 4c 4c 29             NULL)
0310: 3b 0a 0a 09 6c 63 5f 63 6c 65 61 6e 75 70 28 29  ;...lc_cleanup()
0320: 3b 0a 0a 09 69 66 20 28 6c 63 5f 70 5f 72 65 74  ;...if (lc_p_ret
0330: 20 21 3d 20 30 29 20 7b 0a 09 09 66 70 72 69 6e   != 0) {...fprin
0340: 74 66 28 73 74 64 65 72 72 2c 20 22 45 72 72 6f  tf(stderr, "Erro
0350: 72 20 70 72 6f 63 65 73 73 69 6e 67 20 63 6f 6e  r processing con
0360: 66 69 67 75 72 61 74 69 6f 6e 3a 20 5c 5c 0a 09  figuration: \\..
0370: 09 20 20 20 20 20 20 20 20 25 73 5c 5c 6e 22 2c  .        %s\\n",
0380: 20 6c 63 5f 67 65 74 65 72 72 73 74 72 28 29 29   lc_geterrstr())
0390: 3b 0a 09 09 72 65 74 75 72 6e 28 45 58 49 54 5f  ;...return(EXIT_
03a0: 46 41 49 4c 55 52 45 29 3b 0a 09 7d 0a 0a 09 69  FAILURE);..}...i
03b0: 66 20 28 66 69 6c 65 6e 61 6d 65 20 21 3d 20 4e  f (filename != N
03c0: 55 4c 4c 29 20 7b 0a 09 09 70 72 69 6e 74 66 28  ULL) {...printf(
03d0: 22 46 69 6c 65 20 73 70 65 63 69 66 69 65 64 20  "File specified 
03e0: 77 61 73 3a 20 25 73 5c 5c 6e 22 2c 20 66 69 6c  was: %s\\n", fil
03f0: 65 6e 61 6d 65 29 3b 0a 09 7d 20 65 6c 73 65 20  ename);..} else 
0400: 7b 0a 09 09 70 72 69 6e 74 66 28 22 4e 6f 20 66  {...printf("No f
0410: 69 6c 65 6e 61 6d 65 20 73 70 65 63 69 66 69 65  ilename specifie
0420: 64 2e 5c 5c 6e 22 29 3b 0a 09 7d 0a 0a 09 72 65  d.\\n");..}...re
0430: 74 75 72 6e 28 45 58 49 54 5f 53 55 43 43 45 53  turn(EXIT_SUCCES
0440: 53 29 3b 0a 7d 0a 2e 66 69 0a 0a 2e 53 48 20 22  S);.}..fi...SH "
0450: 53 45 45 20 41 4c 53 4f 22 0a 2e 42 52 20 6c 69  SEE ALSO"..BR li
0460: 62 63 6f 6e 66 69 67 20 28 33 29 2c 0a 2e 42 52  bconfig (3),..BR
0470: 20 6c 63 5f 72 65 67 69 73 74 65 72 5f 76 61 72   lc_register_var
0480: 20 28 33 29 2c 0a 2e 42 52 20 6c 63 5f 72 65 67   (3),..BR lc_reg
0490: 69 73 74 65 72 5f 63 61 6c 6c 62 61 63 6b 20 28  ister_callback (
04a0: 33 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20  3),             
04b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0a 2e 42               ..B
04c0: 52 20 6c 63 5f 67 65 74 65 72 72 6e 6f 20 28 33  R lc_geterrno (3
04d0: 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ),              
04e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
04f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0500: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0510: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0520: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0530: 20 20 20 20 20 20 20 20 20 20 20 20 20 0a 2e 42               ..B
0540: 52 20 6c 63 5f 73 65 74 65 72 72 73 74 72 20 28  R lc_seterrstr (
0550: 33 29 2c 20 20 20 20 20 20 20 20 20 20 20 20 20  3),             
0560: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0570: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
05a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
05b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0a 2e 42               ..B
05c0: 52 20 6c 63 5f 68 61 6e 64 6c 65 5f 74 79 70 65  R lc_handle_type
05d0: 20 28 33 29 2c 0a 2e 42 52 20 6c 63 5f 70 72 6f   (3),..BR lc_pro
05e0: 63 65 73 73 20 28 33 29 2c 20 20 20 20 20 20 20  cess (3),       
05f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0600: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0620: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0630: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0650: 20 20 20 20 20 0a 2e 42 52 20 6c 63 5f 70 72 6f       ..BR lc_pro
0660: 63 65 73 73 5f 66 69 6c 65 20 28 33 29 2c 20 20  cess_file (3),  
0670: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0690: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
06a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
06b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
06c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
06d0: 20 20 20 20 20 0a 2e 42 52 20 6c 63 5f 63 6c 65       ..BR lc_cle
06e0: 61 6e 75 70 20 28 33 29 0a                       anup (3).