/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Teddy Hogeborn
  • Date: 2008-08-29 05:53:59 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080829055359-wkdasnyxtylmnxus
* mandos.xml (EXAMPLE): Replaced all occurences of command name with
                        "&COMMANDNAME;".

* plugins.d/password-prompt.c (main): Improved some documentation
                                      strings.  Do perror() of
                                      tcgetattr() fails.  Add debug
                                      output if interrupted by signal.
                                      Loop over write() instead of
                                      using fwrite() when outputting
                                      password.  Add debug output if
                                      getline() returns 0, unless it
                                      was caused by a signal.  Add
                                      exit status code to debug
                                      output.

* plugins.d/password-prompt.xml: Changed all single quotes to double
                                 quotes for consistency.  Removed
                                 <?xml-stylesheet>.
  (ENTITY TIMESTAMP): New.  Automatically updated by Emacs time-stamp
                      by using Emacs local variables.
  (/refentry/refentryinfo/title): Changed to "Mandos Manual".
  (/refentry/refentryinfo/productname): Changed to "Mandos".
  (/refentry/refentryinfo/date): New; set to "&TIMESTAMP;".
  (/refentry/refentryinfo/copyright): Split copyright holders.
  (/refentry/refnamediv/refpurpose): Improved wording.
  (SYNOPSIS): Fix to use correct markup.  Add short options.
  (DESCRIPTION, OPTIONS): Improved wording.
  (OPTIONS): Improved wording.  Use more correct markup.  Document
             short options.
  (EXIT STATUS): Add text.
  (ENVIRONMENT): Document use of "cryptsource" and "crypttarget".
  (FILES): REMOVED.
  (BUGS): Add text.
  (EXAMPLE): Added some examples.
  (SECURITY): Added text.
  (SEE ALSO): Remove reference to mandos(8).  Add reference to
              crypttab(5).

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
PREFIX=$(DESTDIR)/usr
18
18
# CONFDIR=/usr/local/lib/mandos
19
19
CONFDIR=$(DESTDIR)/etc/mandos
20
 
# KEYDIR=/usr/local/lib/mandos/keys
21
 
KEYDIR=$(DESTDIR)/etc/keys/mandos
22
20
# MANDIR=/usr/local/man
23
21
MANDIR=$(DESTDIR)/usr/share/man
24
22
 
60
58
 
61
59
doc: $(DOCS)
62
60
 
63
 
%.5: %.xml legalnotice.xml
64
 
        $(DOCBOOKTOMAN)
65
 
 
66
 
%.8: %.xml legalnotice.xml
67
 
        $(DOCBOOKTOMAN)
68
 
 
69
 
%.8mandos: %.xml legalnotice.xml
70
 
        $(DOCBOOKTOMAN)
71
 
 
72
 
mandos.8: mandos.xml mandos-options.xml overview.xml legalnotice.xml
73
 
        $(DOCBOOKTOMAN)
74
 
 
75
 
mandos-keygen.8: mandos-keygen.xml overview.xml legalnotice.xml
76
 
        $(DOCBOOKTOMAN)
77
 
 
78
 
mandos.conf.5: mandos.conf.xml mandos-options.xml legalnotice.xml
79
 
        $(DOCBOOKTOMAN)
80
 
 
81
 
plugin-runner.8mandos: plugin-runner.xml overview.xml legalnotice.xml
82
 
        $(DOCBOOKTOMAN)
83
 
 
84
 
plugins.d/password-request.8mandos: plugins.d/password-request.xml \
85
 
                                        mandos-options.xml \
86
 
                                        overview.xml legalnotice.xml
 
61
%.5: %.xml
 
62
        $(DOCBOOKTOMAN)
 
63
 
 
64
%.8: %.xml
 
65
        $(DOCBOOKTOMAN)
 
66
 
 
67
%.8mandos: %.xml
 
68
        $(DOCBOOKTOMAN)
 
69
 
 
70
mandos.8: mandos.xml mandos-options.xml
 
71
        $(DOCBOOKTOMAN)
 
72
 
 
73
mandos.conf.5: mandos.conf.xml mandos-options.xml
87
74
        $(DOCBOOKTOMAN)
88
75
 
89
76
plugins.d/password-request: plugins.d/password-request.o
105
92
check:
106
93
        ./mandos --check
107
94
 
108
 
# Run the client with a local config and key
109
 
run-client: all keydir/seckey.txt keydir/pubkey.txt
 
95
# Run the server with a local key
 
96
run-client: all keydir/seckey.txt keydir/pubkey.txt \
 
97
        keydir/secring.gpg keydir/pubring.gpg
110
98
        ./plugin-runner --plugin-dir=plugins.d \
111
 
                --config-file=plugin-runner.conf \
112
 
                --options-for=password-request:--seckey=keydir/seckey.txt,--pubkey=keydir/pubkey.txt
 
99
                --options-for=password-request:--keydir=keydir
113
100
 
114
101
# Used by run-client
 
102
keydir/secring.gpg: keydir/seckey.txt
 
103
        gpg --homedir $(dir $<) --import $^
 
104
keydir/pubring.gpg: keydir/pubkey.txt
 
105
        gpg --homedir $(dir $<) --import $^
115
106
keydir/seckey.txt keydir/pubkey.txt: mandos-keygen
116
107
        install --directory keydir
117
108
        ./mandos-keygen --dir keydir --force
123
114
# Used by run-server
124
115
confdir/mandos.conf: mandos.conf
125
116
        install --directory confdir
126
 
        install --mode=u=rw,go=r $^ $@
 
117
        install $^ $@
127
118
confdir/clients.conf: clients.conf keydir/seckey.txt
128
119
        install --directory confdir
129
 
        install --mode=u=rw,g=r $< $@
 
120
        install clients.conf $@
130
121
# Add a client password
131
122
        ./mandos-keygen --dir keydir --password >> $@
132
123
 
133
124
install: install-server install-client
134
125
 
135
126
install-server: doc
136
 
        install --directory $(CONFDIR) $(MANDIR)/man5 \
 
127
        install --directory --parents $(CONFDIR) $(MANDIR)/man5 \
137
128
                $(MANDIR)/man8
138
 
        install --mode=u=rwx,go=rx mandos $(PREFIX)/sbin/mandos
139
 
        install --mode=u=rw,go=r --target-directory=$(CONFDIR) \
140
 
                mandos.conf
141
 
        install --mode=u=rw,g=r --target-directory=$(CONFDIR) \
 
129
        install --mode=0755 mandos $(PREFIX)/sbin/mandos
 
130
        install --mode=0644 --target-directory=$(CONFDIR) mandos.conf
 
131
        install --mode=0640 --target-directory=$(CONFDIR) \
142
132
                clients.conf
143
 
        install --mode=u=rwx,go=rx init.d-mandos /etc/init.d/mandos
144
 
        install --mode=u=rw,go=r default-mandos /etc/default/mandos
145
 
        update-rc.d mandos defaults
146
133
        gzip --best --to-stdout mandos.8 \
147
134
                > $(MANDIR)/man8/mandos.8.gz
148
135
        gzip --best --to-stdout mandos.conf.5 \
151
138
                > $(MANDIR)/man5/mandos-clients.conf.5.gz
152
139
 
153
140
install-client: all doc /usr/share/initramfs-tools/hooks/.
154
 
        install --directory $(PREFIX)/lib/mandos $(CONFDIR) \
155
 
                $(MANDIR)/man8
156
 
        install --directory --mode=u=rwx $(KEYDIR)
157
 
        install --directory --mode=u=rwx \
158
 
                $(PREFIX)/lib/mandos/plugins.d
159
 
        if [ "$(CONFDIR)/plugins.d" \
160
 
                        != "$(PREFIX)/lib/mandos/plugins.d" ]; then \
161
 
                        install --directory "$(CONFDIR)/plugins.d"; \
162
 
                fi
163
 
        install --mode=u=rwx,go=rx \
164
 
                --target-directory=$(PREFIX)/lib/mandos plugin-runner
165
 
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
 
141
        install --directory --parents $(PREFIX)/lib/mandos \
 
142
                $(CONFDIR) $(MANDIR)/man8
 
143
        install --directory --mode=0700 $(PREFIX)/lib/mandos/plugins.d
 
144
        chmod u=rwx,g=,o= $(PREFIX)/lib/mandos/plugins.d
 
145
        install --mode=0755 --target-directory=$(PREFIX)/lib/mandos \
 
146
                plugin-runner
 
147
        install --mode=0755 --target-directory=$(PREFIX)/sbin \
166
148
                mandos-keygen
167
 
        install --mode=u=rwx,go=rx \
 
149
        install --mode=0755 \
168
150
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
169
151
                plugins.d/password-prompt
170
 
        install --mode=u=rwxs,go=rx \
 
152
        install --mode=4755 \
171
153
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
172
154
                plugins.d/password-request
173
 
        install --mode=u=rwx,go=rx \
174
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
175
 
                plugins.d/usplash
176
155
        install initramfs-tools-hook \
177
156
                /usr/share/initramfs-tools/hooks/mandos
178
157
        install initramfs-tools-hook-conf \
179
158
                /usr/share/initramfs-tools/conf-hooks.d/mandos
180
159
        install initramfs-tools-script \
181
160
                /usr/share/initramfs-tools/scripts/local-top/mandos
182
 
        install --mode=u=rw,go=r plugin-runner.conf $(CONFDIR)
183
161
        gzip --best --to-stdout mandos-keygen.8 \
184
162
                > $(MANDIR)/man8/mandos-keygen.8.gz
185
163
        gzip --best --to-stdout plugin-runner.8mandos \
188
166
                > $(MANDIR)/man8/password-prompt.8mandos.gz
189
167
        gzip --best --to-stdout plugins.d/password-request.8mandos \
190
168
                > $(MANDIR)/man8/password-request.8mandos.gz
191
 
        -$(PREFIX)/sbin/mandos-keygen --dir "$(KEYDIR)"
 
169
        -$(PREFIX)/sbin/mandos-keygen
192
170
        update-initramfs -k all -u
193
 
        echo "Now run mandos-keygen --password --dir $(KEYDIR)"
194
171
 
195
172
uninstall: uninstall-server uninstall-client
196
173
 
197
 
uninstall-server:
 
174
uninstall-server: $(PREFIX)/sbin/mandos
198
175
        -rm --force $(PREFIX)/sbin/mandos \
199
176
                $(MANDIR)/man8/mandos.8.gz \
200
177
                $(MANDIR)/man5/mandos.conf.5.gz \
201
178
                $(MANDIR)/man5/mandos-clients.conf.5.gz
202
 
        update-rc.d -f mandos remove
203
179
        -rmdir $(CONFDIR)
204
180
 
205
181
uninstall-client:
224
200
purge: purge-server purge-client
225
201
 
226
202
purge-server: uninstall-server
227
 
        -rm --force $(CONFDIR)/mandos.conf $(CONFDIR)/clients.conf \
228
 
                /etc/default/mandos /etc/init.d/mandos
 
203
        -rm --force $(CONFDIR)/mandos.conf $(CONFDIR)/clients.conf
229
204
        -rmdir $(CONFDIR)
230
205
 
231
206
purge-client: uninstall-client
232
 
        -shred --remove $(KEYDIR)/seckey.txt
233
 
        -rm --force $(CONFDIR)/plugin-runner.conf \
234
 
                $(KEYDIR)/pubkey.txt $(KEYDIR)/seckey.txt
235
 
        -rmdir $(KEYDIR) $(CONFDIR)/plugins.d $(CONFDIR)
 
207
        -rm --force $(CONFDIR)/seckey.txt $(CONFDIR)/pubkey.txt
 
208
        -rmdir $(CONFDIR) $(CONFDIR)/plugins.d