Mon, 28 Jan 2013 17:37:18 +0100
Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.
1 .\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings. \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote. \*(C+ will
21 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 . ds -- \(*W-
28 . ds PI pi
29 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
31 . ds L" ""
32 . ds R" ""
33 . ds C`
34 . ds C'
35 'br\}
36 .el\{\
37 . ds -- \|\(em\|
38 . ds PI \(*p
39 . ds L" ``
40 . ds R" ''
41 'br\}
42 .\"
43 .\" Escape single quotes in literal strings from groff's Unicode transform.
44 .ie \n(.g .ds Aq \(aq
45 .el .ds Aq '
46 .\"
47 .\" If the F register is turned on, we'll generate index entries on stderr for
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
49 .\" entries marked with X<> in POD. Of course, you'll have to process the
50 .\" output yourself in some meaningful fashion.
51 .ie \nF \{\
52 . de IX
53 . tm Index:\\$1\t\\n%\t"\\$2"
54 ..
55 . nr % 0
56 . rr F
57 .\}
58 .el \{\
59 . de IX
60 ..
61 .\}
62 .\"
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
64 .\" Fear. Run. Save yourself. No user-serviceable parts.
65 . \" fudge factors for nroff and troff
66 .if n \{\
67 . ds #H 0
68 . ds #V .8m
69 . ds #F .3m
70 . ds #[ \f1
71 . ds #] \fP
72 .\}
73 .if t \{\
74 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
75 . ds #V .6m
76 . ds #F 0
77 . ds #[ \&
78 . ds #] \&
79 .\}
80 . \" simple accents for nroff and troff
81 .if n \{\
82 . ds ' \&
83 . ds ` \&
84 . ds ^ \&
85 . ds , \&
86 . ds ~ ~
87 . ds /
88 .\}
89 .if t \{\
90 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
91 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
92 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
93 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
94 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
95 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
96 .\}
97 . \" troff and (daisy-wheel) nroff accents
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
105 .ds ae a\h'-(\w'a'u*4/10)'e
106 .ds Ae A\h'-(\w'A'u*4/10)'E
107 . \" corrections for vroff
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
110 . \" for low resolution devices (crt and lpr)
111 .if \n(.H>23 .if \n(.V>19 \
112 \{\
113 . ds : e
114 . ds 8 ss
115 . ds o a
116 . ds d- d\h'-1'\(ga
117 . ds D- D\h'-1'\(hy
118 . ds th \o'bp'
119 . ds Th \o'LP'
120 . ds ae ae
121 . ds Ae AE
122 .\}
123 .rm #[ #] #H #V #F C
124 .\" ========================================================================
125 .\"
126 .IX Title "REGISTER 8"
127 .TH REGISTER 8 "OpenPKG" "REGISTER(8)" "OpenPKG"
128 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
129 .\" way too many mistakes in technical documents.
130 .if n .ad l
131 .nh
132 .SH "NAME"
133 openpkg register \- OpenPKG Registry Command\-Line Client
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBregister\fR [\-u|\-\-user=<user|token>] [\-l|\-\-link=<token>] [\fI\-d|\-\-desc=<text\fR>]
137 [\-m|\-\-mode=fake|post|wipe] [\fI\-a|\-\-args=<args\fR>]
138 [\fI\-\-plat=<text\fR>] [\fI\-\-orel=<text\fR>] [\fI\-\-uuid=<file\fR>]
139 [\fI\-\-conf=<file\fR>] [\fI\-\-prep=<file\fR>] [\fI\-\-tran=<file\fR>]
140 [\fI\-\-util=<file\fR>] [\-\-data=<tag>[,<tag>...]]
141 [\fI\-P|\-\-preparation\fR] [\fI\-T|\-\-transaction\fR]
142 [\fI\-U|\-\-utilization\fR] [\fI\-C|\-\-convenience\fR]
143 [\fI\-I|\-\-interaction\fR]
144 [\fI\-v|\-\-verbose\fR] [\fI\-h|\-\-help\fR]
145 .PP
146 \&\fBregister\fR \-S|\-\-printstatus
147 .PP
148 \&\fBregister\fR \-R|\-\-rewriteurls [\fIurl\fR ...]
149 .SH "DESCRIPTION"
150 .IX Header "DESCRIPTION"
151 \&\fBopenpkg register\fR is the Command-Line Client the OpenPKG Registry. It is
152 used by administrators to register an instance with the OpenPKG Registry for
153 later association.
154 .PP
155 After association, \fBopenpkg register\fR can be used for repetitive
156 reregistrations which update the heartbeat of the instance on the Registry
157 server, avoiding premature depature from the database. It is assumed that
158 every instance will be reregistered daily. Dormant
159 instances might be discarded from the Registry, revoking their access to
160 additional resources.
161 .SH "PRIMARY OPERATIONS"
162 .IX Header "PRIMARY OPERATIONS"
163 The following primary operations are available:
164 .IP "\fB\-h\fR, \fB\-\-help\fR" 4
165 .IX Item "-h, --help"
166 Display brief usage message.
167 .IP "\fB\-v\fR, \fB\-\-verbose\fR" 4
168 .IX Item "-v, --verbose"
169 Display progress information during data posting.
170 .IP "\fB\-P\fR, \fB\-\-preparation\fR" 4
171 .IX Item "-P, --preparation"
172 Execute the primary operation \*(L"preparation\*(R".
173 Creates registry data for one request and dumps it stdout
174 in \s-1XML\s0 format. That request can be filtered and piped into
175 the transaction phase or it can be copied and pasted into the
176 XMLdump \s-1CGI\s0 facility manually.
177 A copy of the output of the last run is also saved to the \f(CW\*(C`${REGISTRY_PREP}\*(C'\fR file.
178 .IP "\fB\-T\fR, \fB\-\-transaction\fR" 4
179 .IX Item "-T, --transaction"
180 Execute the primary operation \*(L"transaction\*(R".
181 Reads registry data with one request from stdin, executes
182 the transaction and writes registry data with one or more
183 responses to stdout in \s-1XML\s0 format.
184 Depending on the mode of operation, the transaction might be an actual
185 transport to the XMLdump \s-1CGI\s0 facility or a fake activity which complements the
186 manual preparation.
187 A copy of the output of the last run is also saved to the \f(CW\*(C`${REGISTRY_TRAN}\*(C'\fR file.
188 .IP "\fB\-U\fR, \fB\-\-utilization\fR" 4
189 .IX Item "-U, --utilization"
190 Execute the primary operation \*(L"utilization\*(R".
191 Reads registry data with one response from stdin and updates the local
192 registry information.
193 Depending on the mode of operation, the utilization might be an actual
194 processing of a transaction response or a fake activity which complements the
195 manual transaction.
196 Anyway, this step finalizes the registration process and makes the instance
197 assume it has been properly registered. This status can be printed. \s-1URL\s0
198 rewriting is activated.
199 A copy of the output of the last run is also saved to the \f(CW\*(C`${REGISTRY_UTIL}\*(C'\fR file.
200 .IP "\fB\-C\fR, \fB\-\-convenience\fR" 4
201 .IX Item "-C, --convenience"
202 Execute the primary operation \*(L"convenience\*(R".
203 This executes the three primary operations \*(L"preparation\*(R", \*(L"transaction\*(R" and
204 \&\*(L"utilization\*(R" in that order and pipes data through this chain.
205 .IP "\fB\-I\fR, \fB\-\-interaction\fR" 4
206 .IX Item "-I, --interaction"
207 Execute the primary operation \*(L"interaction\*(R".
208 Like \*(L"convenience\*(R" but user is interactively asked for information. This is
209 the easiest way to do registration but it is not meat to be automated.
210 .IP "\fB\-S\fR, \fB\-\-printstatus\fR" 4
211 .IX Item "-S, --printstatus"
212 If the instance has been registered, information about the registration is printed in a
213 format suitable for shell evaluation and return code is true.
214 Otherwise nothing is printed and return code is false.
215 .IP "\fB\-R\fR, \fB\-\-rewriteurls\fR [\fIurl\fR ...]" 4
216 .IX Item "-R, --rewriteurls [url ...]"
217 If the instance has been registered, the given URLs are rewritten to prepend
218 user:pass information before hostnames below the openpkg.(org|net|com)
219 domains. Note the username is is \s-1UUID_REGISTRY\s0 and the password is the
220 concatenation of \s-1UUID_INSTANCE\s0 and \s-1UUID_PLATFORM\s0 from the
221 PREFIX/etc/openpkg/uuid file. Both informations are not meant to be used for
222 traditional authentication, they are merly statistical information.
223 Otherwise the URLs are returned verbatim.
224 .SH "STANDARD OPTIONS"
225 .IX Header "STANDARD OPTIONS"
226 Standard options are typically used to automate registration (not
227 association).
228 .IP "\fB\-m\fR, \fB\-\-mode\fR fake|post|wipe" 4
229 .IX Item "-m, --mode fake|post|wipe"
230 Overrides \f(CW\*(C`${REGISTRY_MODE}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
231 Has no default and is a manadatory setting.
232 .Sp
233 In \fBpost\fR mode, transactions are carried out using real network connectivity.
234 The \*(L"preparation\*(R" step creates a XMLdump and writes it into the
235 \&\f(CW\*(C`${REGISTRY_PREP}\*(C'\fR file. The \*(L"transaction\*(R" step posts it to the DropXML form
236 using a \s-1HTTP\s0 request. The response coming back from Registration server is
237 also in \s-1XML\s0 format and is saved to \f(CW\*(C`${REGISTRY_TRAN}\*(C'\fR file. The
238 \&\*(L"utilization\*(R" step processes this response and writes the final results to the
239 \&\f(CW\*(C`${REGISTRY_UTIL}\*(C'\fR file.
240 .Sp
241 In \fBfake\fR mode, no network connectivity takes place.
242 The \*(L"prepararation\*(R" step creates a XMLdump and writes it into the
243 \&\f(CW\*(C`${REGISTRY_PREP}\*(C'\fR file. The \*(L"transaction\*(R" step is a fake only. It assumes a
244 successful response from the Registration server and saves it to
245 \&\f(CW\*(C`${REGISTRY_TRAN}\*(C'\fR file. The \*(L"utilization\*(R" step processes this response and
246 writes the final results to the \f(CW\*(C`${REGISTRY_UTIL}\*(C'\fR file.
247 \&\fINote\fR: fake mode is meant as a way to register instances which cannot or must
248 not post data directly to the Registration server.
249 .Sp
250 In \fBwipe\fR mode, the registration is wiped out locally. The status is reset
251 and \s-1URL\s0 rewriting is disabled.
252 \&\fINote\fR: the registration server is not contacted, the instace must be removed
253 manually using the web interface.
254 \&\fINote\fR: wiping registration is highly recommended as a precursor action of
255 cloning activities.
256 .ie n .IP "\fB\-a\fR, \fB\-\-args\fR ""arg [arg ...]""" 4
257 .el .IP "\fB\-a\fR, \fB\-\-args\fR ``arg [arg ...]''" 4
258 .IX Item "-a, --args arg [arg ...]"
259 Overrides \f(CW\*(C`${REGISTRY_ARGS}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
260 Complements the mode and is specific to it.
261 Defaults to \*(L"http://registry.openpkg.org/register\*(R" which is the official registry of the OpenPKG Project.
262 This default is useful for \*(L"post\*(R" mode.
263 .IP "\fB\-u\fR, \fB\-\-user\fR \fIuser|token\fR" 4
264 .IX Item "-u, --user user|token"
265 Overrides \f(CW\*(C`${REGISTRY_USER}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
266 Indicates the registry user which will find this registration in his arrival queue.
267 The user can also specified as a token which is enabled for use as \*(L"user\*(R".
268 If the token is also enabled for \*(L"assoc\*(R" the registered instance is immediately associated
269 to the user with no need for the user to visit the web interface.
270 This information in submitted via the \*(L"registry_user\*(R" attribute of the \s-1XML\s0 request.
271 Retrieves default online from http://openpkg.org/go/autoregister and is a manadatory setting.
272 .IP "\fB\-l\fR, \fB\-\-link\fR \fItoken\fR" 4
273 .IX Item "-l, --link token"
274 Overrides \f(CW\*(C`${REGISTRY_LINK}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
275 Indicates the registry user which will find this registration linked to his token.
276 The link must be specified as a token which is enabled for use as \*(L"link\*(R".
277 If a user token is used and the link token is also enabled for \*(L"assoc\*(R" then the registered instance
278 is immediately associated to the user with no need for the user to visit the web interface.
279 This information in submitted via the \*(L"registry_link\*(R" attribute of the \s-1XML\s0 request.
280 Has no default and is an optional setting.
281 Be aware that linked users see the same information about an instance as the associated user
282 can find on his \*(L"association\*(R" page but they cannot alter or delete information.
283 .IP "\fB\-d\fR, \fB\-\-desc\fR \fIdescription\fR" 4
284 .IX Item "-d, --desc description"
285 Overrides \f(CW\*(C`${REGISTRY_DESC}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
286 Indicates a human readable description of the instance.
287 This information in submitted via the \*(L"registry_desc\*(R" attribute of the \s-1XML\s0 request.
288 It appears in the \*(L"description\*(R" column on the \*(L"association\*(R" page of the web form and can be edited on the server side.
289 Defaults to \*(L"openpkg://${\s-1FQDN\s0}${\s-1PREFIX\s0}\*(R"
290 .SH "ADVANCED OPTIONS"
291 .IX Header "ADVANCED OPTIONS"
292 Advanced options can be enganged to tailor and fully automate a registration
293 (not association).
294 .IP "\fB\-\-plat\fR" 4
295 .IX Item "--plat"
296 Overrides \f(CW\*(C`${REGISTRY_PLAT}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
297 Indicates the platform. Concatenated information from \s-1CPU\s0 architecture (arch) and Operating System (os).
298 This information in submitted via the \*(L"registry_plat\*(R" attribute of the \s-1XML\s0 request.
299 Defaults to \*(L"%{l_platform \-p}\*(R", e.g. \*(L"ix86\-freebsd6.1\*(R"
300 .IP "\fB\-\-orel\fR" 4
301 .IX Item "--orel"
302 Overrides \f(CW\*(C`${REGISTRY_VERS}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
303 Indicates the OpenPKG release.
304 This information in submitted via the \*(L"registry_orel\*(R" attribute of the \s-1XML\s0 request.
305 Defaults to \*(L"%{l_openpkg_release}\*(R", e.g. \*(L"OpenPKG-CURRENT\*(R", \*(L"OpenPKG\-2\-STABLE\*(R", \*(L"OpenPKG\-2.5\*(R",
306 .IP "\fB\-\-uuid\fR" 4
307 .IX Item "--uuid"
308 Overrides \f(CW\*(C`${REGISTRY_UUID}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
309 Indicates the \s-1UUID\s0 file of the instance.
310 This information in submitted via the \*(L"uuid_registry\*(R", \*(L"uuid_instance\*(R" and \*(L"uuid_platform\*(R" attributes of the \s-1XML\s0 request.
311 Defaults to \fI${\s-1PREFIX\s0}/etc/openpkg/uuid\fR
312 .IP "\fB\-\-conf\fR" 4
313 .IX Item "--conf"
314 Overrides \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR variable from previous \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file. Processing
315 of the current configuration file is aborted immediately with all variables
316 read so far kept. THe new configuration file is read in immediately and
317 processing continues there. This works similar to an include but is more
318 primitive as it does not allow nesting, only chaining.
319 Defaults to \fI${\s-1PREFIX\s0}/etc/openpkg/register.conf\fR
320 .IP "\fB\-\-prep\fR" 4
321 .IX Item "--prep"
322 Overrides \f(CW\*(C`${REGISTRY_PREP}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
323 File to save a copy of the output from the \*(L"preparation\*(R" step.
324 Defaults to \fI${\s-1PREFIX\s0}/etc/openpkg/register.prep\fR
325 .IP "\fB\-\-tran\fR" 4
326 .IX Item "--tran"
327 Overrides \f(CW\*(C`${REGISTRY_TRAN}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
328 File to save a copy of the output from the \*(L"transaction\*(R" step.
329 Defaults to \fI${\s-1PREFIX\s0}/etc/openpkg/register.tran\fR
330 .IP "\fB\-\-util\fR" 4
331 .IX Item "--util"
332 Overrides \f(CW\*(C`${REGISTRY_UTIL}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
333 File to save a copy of the output from the \*(L"utilization\*(R" step.
334 Defaults to \fI${\s-1PREFIX\s0}/etc/openpkg/register.util\fR
335 .IP "\fB\-\-data\fR" 4
336 .IX Item "--data"
337 Overrides \f(CW\*(C`${REGISTRY_DATA}\*(C'\fR variable in \f(CW\*(C`${REGISTRY_CONF}\*(C'\fR file.
338 Comma separated list of tags to prepare. Available tags are \*(L"request\*(R",
339 \&\*(L"package\*(R" and \*(L"provides\*(R". The \*(L"request\*(R" refers to the whole thing and
340 is mandatory. The \*(L"package\*(R" includes name-version-release information
341 for all installed packages and \*(L"provides\*(R" adds more details required to
342 capture package options. For details see \s-1OPENPKG_PREP\s0 below.
343 Defaults to \*(L"request,package,provides\*(R"
344 .SH "FILES"
345 .IX Header "FILES"
346 The following files are used by \fBopenpkg register\fR:
347 .IP "OPENPKG_UUID=\fI${\s-1PREFIX\s0}/etc/openpkg/uuid\fR" 4
348 .IX Item "OPENPKG_UUID=${PREFIX}/etc/openpkg/uuid"
349 .Vb 3
350 \& UUID_REGISTRY="..."
351 \& UUID_INSTANCE="..."
352 \& UUID_PLATFORM="..."
353 .Ve
354 .IP "OPENPKG_CONF=\fI${\s-1PREFIX\s0}/etc/openpkg/register.conf\fR" 4
355 .IX Item "OPENPKG_CONF=${PREFIX}/etc/openpkg/register.conf"
356 Format suitable for shell evaluation. Interactive mode appends remarked date
357 and current settings for reuse as new defaults for future runs. Can be preset
358 to customize or automate registration.
359 .IP "OPENPKG_PREP=\fI${\s-1PREFIX\s0}/etc/openpkg/register.prep\fR" 4
360 .IX Item "OPENPKG_PREP=${PREFIX}/etc/openpkg/register.prep"
361 .Vb 10
362 \& <?xml version="1.0" encoding="iso\-8859\-1" standalone="no"?>
363 \& <!DOCTYPE registry
364 \& PUBLIC "\-//OpenPKG//DTD OpenPKG Registry 0.0.1//EN"
365 \& "http://registry.openpkg.org/registry.dtd" []>
366 \& <registry>
367 \& <request id="..."
368 \& registry_user="me@example.com"
369 \& registry_desc="openpkg://rm0.openpkg.net/openpkg\-dev"
370 \& registry_plat="ix86\-freebsd6.1"
371 \& registry_orel="OpenPKG\-CURRENT"
372 \& uuid_registry="..."
373 \& uuid_instance="..."
374 \& uuid_platform="..."
375 \& />
376 \& <package id="..." name="ssmtp" version="2.61" release="20050608">
377 \& <provides name="ssmtp::with_ssl" flag="=" version="no"/>
378 \& <provides name="MTA" flag="" version=""/>
379 \& <provides name="ssmtp" flag="=" version="2.61\-20050608"/>
380 \& </package>
381 \& </registry>
382 .Ve
383 .Sp
384 The \s-1XML\s0 request starts with <?xml version ...> and <!DOCTYPE registry ...>
385 headers followed by a <registry> container. The request is inside a <request>
386 tag. Successful submission into the XMLdump form requires the headers and
387 exactly one container. It is possible to merge multiple requests into a single
388 container manually or otherwise and submit them all at once.
389 .IP "OPENPKG_TRAN=\fI${\s-1PREFIX\s0}/etc/openpkg/register.tran\fR" 4
390 .IX Item "OPENPKG_TRAN=${PREFIX}/etc/openpkg/register.tran"
391 .Vb 7
392 \& <?xml version="1.0" encoding="iso\-8859\-1" standalone="no"?>
393 \& <!DOCTYPE registry
394 \& PUBLIC "\-//OpenPKG//DTD OpenPKG Registry 0.0.1//EN"
395 \& "http://registry.openpkg.org/registry.dtd" []>
396 \& <registry>
397 \& <response id="..." done="yes">openpkg://rm0.openpkg.net/openpkg\-dev</response>
398 \& </registry>
399 .Ve
400 .Sp
401 The \s-1XML\s0 response starts with <?xml version ...> and <!DOCTYPE registry ...>
402 headers followed by a <registry> container. The response is inside a <request>
403 tag. The data carried in the tag comes from the \*(L"description\*(R" column on the
404 \&\*(L"association\*(R" page of the web form and can be edited on the server side.
405 .IP "OPENPKG_UTIL=\fI${\s-1PREFIX\s0}/etc/openpkg/register.util\fR" 4
406 .IX Item "OPENPKG_UTIL=${PREFIX}/etc/openpkg/register.util"
407 .Vb 3
408 \& REGISTRY_DBID="..."
409 \& REGISTRY_DONE="yes"
410 \& REGISTRY_RESP="openpkg://foo.example.com/my/openpkg/prefix"
411 .Ve
412 .SH "EXAMPLES"
413 .IX Header "EXAMPLES"
414 .Vb 10
415 \& # su \- openpkg\-mop
416 \& $ openpkg register \-\-printstatus
417 \& REGISTRY_DBID="..."
418 \& REGISTRY_DONE="yes"
419 \& REGISTRY_RESP="openpkg://foo.example.com/my/openpkg/prefix"
420 \& $ openpkg register \-\-printstatus >/dev/null && echo "Yup"
421 \& Yup
422 \& $ eval \`openpkg register \-\-printstatus\`; echo DONE=$REGISTRY_DONE
423 \& DONE=yes
424 \& $ openpkg register \-\-mode=wipe
425 \& $ openpkg register \-\-printstatus || echo "Nope"
426 \& Nope
427 \& $ openpkg register \-\-user=thl@openpkg.net \-\-mode=post
428 \& REGISTRY_DBID="...."
429 \& REGISTRY_DONE="yes"
430 \& REGISTRY_RESP="openpkg://foo.example.com/my/openpkg/prefix"
431 \& $ openpkg register \-\-printstatus >/dev/null && echo "Yup"
432 \& Yup
433 \& $ openpkg register \-\-rewriteurls http://download.openpkg.org/foo/bar
434 \& ftp://...:...@download.openpkg.org/foo/bar
435 .Ve
436 .SH "SEE ALSO"
437 .IX Header "SEE ALSO"
438 \&\fIbash\fR\|(1), \f(CW\*(C`openpkg man uuid\*(C'\fR, \f(CW\*(C`http://registry.openpkg.org/\*(C'\fR
439 .SH "AUTHOR"
440 .IX Header "AUTHOR"
441 Thomas Lotterer <thl@openpkg.org>