aboutsummaryrefslogtreecommitdiff
path: root/GUIDELINES
blob: c0ac0be55e46709e509badc80c2555a5f608120b (plain)
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
109
110
111
112
113
114
115
116
117
118
119
Firma development policy
------------------------

Abstract: this policy helps control all development
          steps to keep a clean and junk-free code.

In the future this procedure will be automatic.

1 - After any adition to firma, check the following:
----------------------------------------------------

  - Put all new variables in the variables list
  - If the new var is used via config-file, add its creation
    in the function 'newlist'
  - Put all new functions in the function list 
  - Put all new arrays in var USED_ARRAYS
  - If you are using an unix command, check if its already
    listed in the command list, if not please add it

2 - Variables usage
-------------------

  - Global vars: uppercase
  - Local vars: lowercase, declared with "local"
  - Attention to variables initialization, unset all vars after use

3 - Script listing
------------------

- used functions:

  DeclareGpgVars 
  Usage 
  Version 
  CheckFirmaConfigFile 
  CheckListConfigFile 
  GetMessage 
  GetMessageHeaders 
  GetGpgMessage 
  GetGpgDecryptStderr 
  GetSubscribersList 
  SendListMessage 
  SendWarningMessage 
  SendBounceMessage 
  ProcessMessage 
  NewList 
  ListAdministration 
  ChooseUid 

- used variables:

  - via config file

    GPG_BINARY
    MAIL_AGENT
    MAIL_AGENT_ARGS
    LISTS_DIR 

    LIST_ADDRESS
    LIST_ADMIN
    LIST_HOMEDIR
    PASSPHRASE

  - direct at firma

    VERSION

    GPG
    GPG_FLAGS
    GPG_LIST_KEYS
    GPG_DECRYPT
    GPG_ENCRYPT

    LISTS_DIR
    SENDER_ADDRESS
    ARRAY
    LIST_NAME
    LIST_PATH
    LIST_CONFIG_FILE
    FIRMA_CONFIG_FILE

    FROM
    DATE
    SUBJECT

    DESCRIPTION

  - local vars

    administrator
    email
    keyid
    element, i, j, uid_count, chosen_uid_number

  - arrays

    see GLOBAL_ARRAYS

- unix commands:

   bash itself

   $GPG_BINARY
   $MAIL_AGENT

   echo
   cat
   grep
   wc
   tr
   seq
   cut
   sed
   mkdir
   touch
   chmod
   basename
   expect
   fold