-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
560 lines (439 loc) · 20.6 KB
/
ChangeLog
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
nph 1.2.3 - 6/17/04
---------
- updated ph_open(3) man page
- updated ph_email_resolve(3) man page
- added PH_ERR_READONLY constant
- modified ph_change(), ph_add(), and ph_delete() to return
PH_ERR_READONLY when server is in read-only mode
(note that this also affects ph_passwd(), since it uses ph_change())
- modified nph "change", "add", "delete", and "edit" commands to
check for PH_ERR_READONLY return value from libphclient
- fixed ph_email_resolve() to avoid segfault if user name is all
punctuation or all spaces
(thanks to Neil Rickert <[email protected]> for the bug report)
- added "keyfields=" option to nph "resolve_email" command
----------------------------------------------------------------------------
nph 1.2.2 - 7/2/03
---------
- fixed ph_open() to check that result parameter of gethostbyname_r()
and getservbyname_r() is non-NULL
(was causing segfault under Linux for unknown hostnames; thanks to
Damian Menscher <[email protected]> for the bug report)
- fixed segfault in nph "make" command
----------------------------------------------------------------------------
nph 1.2.1 - 5/9/03
---------
- minor portability fixes
- better handling of postinstall script in top-level Makefile
- fixed bug in ph_email_resolve() that caused a segfault when querying
based on the "name" field
(thanks to Neil Rickert <[email protected]> and
Doug Brenner <[email protected]> for the bug reports)
- renamed MASK macro in lib/auth.c to avoid conflict with OS X header files
(thanks to Andrew Laurence <[email protected]> for the bug report)
- added autoconf test for _SC_GETPW_R_SIZE_MAX
(thanks to Jon Roma <[email protected]> and Andrew Laurence <[email protected]>
for the bug reports)
----------------------------------------------------------------------------
nph 1.2.0 - 11/24/02
---------
- updated README file
- added libphclient_is_thread_safe variable to libphclient API
- updated compat code
- minor portability fixes
----------------------------------------------------------------------------
nph 1.2.dev1 - 11/11/02
------------
- use poll() or select() to avoid SIGPIPE in ph_send_command()
- replaced ph_fd() function with ph_rfd() and ph_wfd()
----------------------------------------------------------------------------
nph 1.2.dev0 - 10/19/02
------------
- libphclient API changes:
- use clearer names for constant macros in <phclient.h>
- add prefixes to field names in all structures
- pass application-supplied pointer to send/recv hooks
- moved PH structure definition out of <phclient.h>
- libphclient code is now thread-safe
- code cleanup:
- reformatted code for readability
- moved network line buffer code into its own module
- moved memory management code into its own module
- packaging changes:
- updated COPYRIGHT info
- updated autoconf macros
- added --with-mailmatches configure option
----------------------------------------------------------------------------
nph 1.1.8 - 6/14/02
---------
- fixed postinstall script to find nslookup in either /usr/bin or
/usr/sbin
- updated to autoconf-2.53
- added ".PHONY" target in top-level Makefile.in to fix portability issue
(thanks to Alex J. Lovell-Troy <[email protected]> for the bug report)
- removed silly extern wrapper from nph/nph.h
- avoid segfault when requesting a hidden field
- calculate query output field name width dynamically
- free fieldinfo cache in ph_login(), ph_logout(), and ph_suser() to
accomodate hidden fields that are only visible to heros
- restructured autoconf macros
----------------------------------------------------------------------------
nph 1.1.7 - 1/30/02
---------
- fixed postinstall script to properly find domain even if hostname is
not set to the FQDN
(thanks to Charley LeCrone <[email protected]> for the suggestion)
- use $HOME if set instead of getpwuid(getuid())
- do not use pager in non-interactive mode
- match option, siteinfo, and field names in a case-insensitive manner
- minor code cleanups
- updated to autoconf-2.52
- improved Makefile portability
- avoid segfault when "return" is the first word of a query
(thanks to Charley LeCrone <[email protected]> for the bug report)
- fixed ph_email_resolve() to properly return PH_DATAERR when the matching
entry does not have an "email" field
(based on patch from Doug Brenner <[email protected]>)
----------------------------------------------------------------------------
nph 1.1.6 - 5/29/01
---------
- updated to use readline-4.2 API
----------------------------------------------------------------------------
nph 1.1.5 - 5/29/01
---------
- match field names in a case-insensitive manner
- updated autoconf macros and compat code
- if server doesn't support "fields" command, avoid infinite loop and
assume default field name length of 16
----------------------------------------------------------------------------
nph 1.1.4 - 1/18/01
---------
- changed ph_serverlist_merge(), ph_email_resolve(),
ph_advertised_email(), ph_www_resolve(), and ph_advertised_www()
to handle PH_DATAERR when returned from ph_query()
----------------------------------------------------------------------------
nph 1.1.3 - 1/17/01
---------
- changed ph_query() to return PH_DATAERR for invalid queries
- changed ph_login() to set errno properly
- updated autoconf macros
- automatically add postinstall script when creating Encap package
- install nphrc and ph_server files from postinstall script instead of
from make install target
- minor code cleanups
----------------------------------------------------------------------------
nph 1.1.2 - 12/13/00
---------
- fixed "set" command to properly display an error when setting a
non-existant option
- fixed autoconf snprintf() test to make sure it NUL-terminates
- added $(DESTDIR) to Makefiles (patch from Dave Terrell <[email protected]>)
- replaced $(etcdir) with $(sysconfdir) in nph/Makefile.in
- Makefile changes to support WSG_PKG and WSG_ENCAP autoconf macros
----------------------------------------------------------------------------
nph 1.1.1 - 10/29/00
---------
- fixed bug in ph_open() related to non-default port numbers
- removed reference to ph_free_query() from ph_query() manpage
- fixed memory leak in nph by calling ph_free_selectors() instead of free()
- updated README file
- minor directory structure changes because of CVS setup
- various portability fixes
----------------------------------------------------------------------------
nph 1.1 - 9/14/00
-------
- changed argument list for ph_open()
- trailing newline is no longer sent to sendhook function
- nph query output looks more like the original ph client
----------------------------------------------------------------------------
nph 1.0.3 - 9/12/00
---------
- fixed a bug in ph_get_fieldinfo() which caused a segfault when
called with an unknown field name
- fixed ph_open() not to send the ident string if the connection fails
- fixed segfault in nph when server returned no status info
- fixed segfault in nph when user typed "query" or "ph" with no further
arguments
- changed various redundant for() loops to while() loops for strsep()
- minor manpage corrections
----------------------------------------------------------------------------
nph 1.0.2 - 7/20/00
---------
- added note to README about requiring readline-4.1 or newer
- changed ph_get_response() to set errno to ECONNRESET and return -1
when read() returns 0
- declare internal auxiliury functions as static in lib/redirection.c
- changed ph_open() to fall back to a hardcoded port if the "csnet-ns"
service isn't found
- changed ph_email_resolve() to ignore the fields argument if it points
to an empty string
(thanks to Jon Roma <[email protected]>)
- improved ph_email_resolve(3) manpage
(thanks to Jon Roma <[email protected]>)
- added aclocal.m4 to clean up configure.in
- removed "inline" declarations
- portability fixes related to snprintf()
----------------------------------------------------------------------------
nph 1.0.1 - 5/27/00
---------
- changed PH_DEFAULT_MAILMATCHES to "alias:callsign"
- changed ph_email_resolve() to terminate the returned address at the first
whitespace or comma
- fixed error in lib/options.c which failed to return 0 on successful
return from ph_retrieve_options()
- fixed error in lib/options.c which failed to set errno to EINVAL in
ph_set_option()
- removed declarations for various unused variables
- fixed nph/Makefile.in to strip installed nph binary
----------------------------------------------------------------------------
nph 1.0 - 5/9/00
-------
- First public release
----------------------------------------------------------------------------
nph 0.10.7 - 4/21/00
----------
- fixed NULL pointer problem with defaultfield and returnfields options
----------------------------------------------------------------------------
nph 0.10.6 - 4/7/00
----------
- portability fix: use autoconf to detect <crypt.h>
(thanks to Dave Terrell <[email protected]> for the patch)
- fixed segfault caused by logging in and then quitting
(thanks to Geoff Raye <[email protected]> for the bug report)
- added $(CFLAGS) to link link in nph/Makefile.in
----------------------------------------------------------------------------
nph 0.10.5 - 4/2/00
----------
- fixed lib/stack.c to avoid calling free() on a NULL pointer
(needed to prevent segfault in sendmail timeout code)
----------------------------------------------------------------------------
nph 0.10.4 - 4/1/00
----------
- fixed bugs in field alias code
- fixed C preprocessor typo in lib/query.c
- simplified readline detection
- removed a patch from 0.10.2 which declared variables as extern and then
later without extern to prevent vendor compiler horkage
- changed nph/Makefile.in to install a default ph_server file
----------------------------------------------------------------------------
nph 0.10.3 - 3/29/00
----------
- added "defaultfield" option to set field for selectors which do not
specify a field name
- set rl_readline_name in nph/interactive.c
- fixed option parsing (broken from 0.10.2)
- added support for field aliases via the "fieldaliases" server option
----------------------------------------------------------------------------
nph 0.10.2 - 3/29/00
----------
- changed syntax for "option" command to allow whitespace surrounding '='
- nph calls ph_id() automatically to log its version on the server
- ph_open() automatically calls ph_id() to log the libphclient version
on the server unless the PH_DONTID flag is set
- if "canonicaladdrs" option is set, nph will always display cannonical
email and www fields, even if those fields were directly requested
in the return clause
- added libphclient_version variable to libphclient
- minor config cleanup
----------------------------------------------------------------------------
nph 0.10.1 - 3/24/00
----------
- fixed a typo in nph/interactive.c affecting systems without poll()
- changed nph/content.c to look for "canonicaladdrs" option instead of
"showredirects" (was actually renamed in 0.10)
----------------------------------------------------------------------------
nph 0.10 - 3/21/00
--------
- libphclient changes:
- added general-purpose return value macros to <phclient.h> and modified
all library functions to use them as appropriate
- changed ph_retrieve_*() functions to use stack and only set fields of
ph handle when they complete successfully
- changed ph_retrieve_*() functions to return 0 immediately if data is
already cached locally
- added ph_is_*_cached() macros to determine if PH handle fields are valid
- moved ph_free_*() functions for fieldlist, options, and siteinfo to the
public interface
- fixed ph_resolve_www() and ph_advertised_www() to return PH_DATAERR
if the matching entry does not have a "www" field
- fixed ph_advertised_www() to call ph_resolve_www() if the server
doesn't support the "wwwredirects" siteinfo field
- fixed ph_change() to return PH_DATAERR if it reads a -LR_VALUE
response code
- added ph_fd() call
- changed NSSERVICE to PH_SERVICE
- changed BUF_SIZE to PH_BUF_SIZE
- nph changes:
- default server is now determined from commandline, ${PH_SERVER}, or
${prefix}/etc/ph_server (in that order)
- check for .nphrc.${PH_SERVER}, then .nphrc, then ${prefix}/etc/nphrc
(this allows for per-server dotfiles)
- nphrc files are now parsed as nph commands, rather than simply option
settings, so any arbitrary command can be run automatically
- added "serveradd" command to replace ph_servers file
- added "connect" command to connect to a new server
- added "source" command to read commands from a file
- added "ph" as a synonym for "query" command
- changed "servers" to "listservers"
- misc updates to reflect libphclient changes above
- make sure to call rl_callback_handler_remove() before all exit() calls
- portability fixes:
- added check for vfork() to configure script
- fixed syntax error in nph/interactive.c for systems without poll()
- added a digusting hack in nph/interactive.c to force use of select()
over poll() under IRIX
----------------------------------------------------------------------------
nph 0.9.4 - 3/7/00
---------
- replaced ph_serverlist() call with new calls ph_serverlist_add(),
ph_serverlist_iterate(), and ph_serverlist_merge()
- nph now reads ${prefix}/etc/ph_servers for the default server/site
list, and adds to this list from servers which have additional data
----------------------------------------------------------------------------
nph 0.9.3 - 3/5/00
---------
- changed ph_close() to not wait for a response code if PH_FASTCLOSE is set
- added lib/serverlist.c module to libphclient and corresponding
"servers" command to nph
- added optional "@domain" argument to nph query command which will perform
the query on a known PH server for "domain"
- replaced global ph_server variable in nph with "server" option
(setting this will change which server you are connected to)
- added "usereservedport" option to nph
- removed "-p" commandline option to nph (ports are now represented as
part of the server name, such as "ns.uiuc.edu:105")
- nph will now read ${prefix}/etc/nphrc before the user's .nphrc file
- improved handling of SIGINT in nph readline code
----------------------------------------------------------------------------
nph 0.9.2 - 2/24/00
---------
- misc portability fixes
- added error checking for memory allocation in library code
- added conditional directives to lib/phclient.h to prevent including it twice
- changed ph_resolve_email() to accept ':' or ' ' as a delimiter in field list
- added "confirm_alias" argument to ph_advertised_email()
and ph_advertised_www()
- various documentation fixes and updates
- improved space-padding of field names in query output
(thanks to Geoff Raye <[email protected]> for the suggestion)
- optimized nph query code to add "alias" to list of requested fields rather
than requesting all fields and only printing some
- added "-C" option to tell nph not to read ~/.nphrc
- changed nph to bail out if "-f rcfile" was used but rcfile doesn't exist
- nph readline completion code now handles the "return", "make", and
"force" keywords
----------------------------------------------------------------------------
nph 0.9.1 - 2/23/00
---------
- fixed a bug in nph/commands.c which free()'d staticly-allocated memory
- fixed a bug in nph/conf.c which caused nph to segfault if "-f nphrc"
option was used
- changed ph_query() to return -2 if it encountered an LR_TOOMANY response
- portability fix: if EPROTO isn't defined, use EINVAL
----------------------------------------------------------------------------
nph 0.9 - 2/22/00
-------
- changed ph_open() to allocate memory for the PH handle and set a pointer,
rather than filling in a caller-supplied buffer
- changed ph_close() to check the response code to the "quit" command
- cleaned up API for field list, server options, and siteinfo list
- cleaned up value-parsing code and moved it from nph into libphclient
(see new ph_encode_selector() call)
- fixed nph to set debugging hooks and validate "returnfields" option
after connecting to the PH server
- changed readline code to redisplay input line after debugging output
(e.g., for completion of field names or server options)
- added "-V" option to display nph version
----------------------------------------------------------------------------
nph 0.8 - 2/20/00
-------
- added manpages for libphclient API and nph client
- replaced ph_field structure with ph_fieldselector (for queries) and
ph_fieldval (which includes the response code for returned entries)
- added a generalized stack mechanism in PH handle to prevent memory leaks
- replaced php and current_alias in PH handle with new struct ph_auth
- added nph "confirmedits" option (and corresponding commandline option "-c")
- added nph "returnfields" option to set default return fields
- readline completion code now completes client options and server options
where appropriate
- changed "edit" command to support "edit field alias"
----------------------------------------------------------------------------
nph 0.7 - 2/18/00
-------
- changed some variable names, function names, and paramter lists to
improve readability
- added send and receive hook functions so applications can see everything
sent between the client and server
- added library calls to determine resolved and advertised URLs for
PH-redirected www fields (actually added in 0.6, forgot to list below)
- added "resolve_www" and "public_www" commands to nph
- replaced "auth_method" command with generic "option" command which
can change any nph setting
- nph commands can be redirected to a file or piped to a program with
">", ">>", or "|"
- "query", "me", and "status" commands are piped through the pager
by default
- if compiled with readline support, nph commandline is redisplayed
after being suspended and foregrounded again
- if compiled with readline support, command can be interrupted with SIGINT
- added "make" command
- expanded nph "whoami" command to display server and port
----------------------------------------------------------------------------
nph 0.6 - 2/14/00
-------
- changed several filenames to better reflect their content
- moved current_alias field from nph code to PH structure in libphclient
and added ph_whoami() call to lib/auth.c
- changed auth method plugins in lib/auth.c to use a static buffer from
the caller rather than dynamicly allocating memory
- added ph_quote_value() in lib/protocol.c to convert a field value from
literal representation to a server-parsable quoted string
- fixed nph client to use literal representation of field values internally
- added "edit" and "me" commands
- nph will now send a query from its commandline arguments, just like
the classic ph client
- added/changed several commandline options to nph
----------------------------------------------------------------------------
nph 0.5 - 2/12/00
-------
- added whoami command
- fixed parsing problem with trailing spaces
- added bye, stop, and exit as synonyms for quit
- added motd as a synonym for status
- updated help information
- added ph_passwd() library call and corresponding functionality in nph
- added --enable-nph-setuid configure option
- nph drops root privs after connecting to the PH server if installed setuid
- changed ph_resolve_email() to ignore all but the first address listed
in the matching email field
----------------------------------------------------------------------------
nph 0.4 - 2/11/00
-------
- added readline and polling support to nph
- added command and field completion
- tweaked Makefiles to support CPPFLAGS
- fixed to correctly parse quoted strings for field values
----------------------------------------------------------------------------
nph 0.3 - 2/10/00
-------
- modularized nph client code
- added basic help facility to nph
- added rudimentary ~/.nphrc support
- decided not to encode key modification information in server mailmatches
field and modified ph_resolve_email() to just use builtin defaults
- added argument to ph_resolve_email() to avoid memory leaks in applications
which use timeouts
- changed ph_resolve_email() to properly handle a lookup which returns
only a single error field (e.g., when email field is not present)
----------------------------------------------------------------------------
nph 0.2 - 2/9/00
-------
- removed extraneous strsep() prototypes from library code
- added phent argument to ph_email_address() in emailaddr.c to
avoid memory leak in applications which use timeouts
- changed arguments of ph_resolve_email() so that server can indicate
how keys should be modified before a given field lookup
----------------------------------------------------------------------------
nph 0.1 - 2/7/00
-------
- Initial alpha release.