forked from chaos/pdsh
/
ChangeLog
2073 lines (1438 loc) · 72.2 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
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2010-10-19 Mark Grondona <mgrondona@llnl.gov>
* Makefile.am, configure.ac, testsuite/* :
Remove dejagnu based testsuite.
2010-10-04 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/privsep.c, src/pdsh/privsep.h :
Switch to rresvport_af.
* src/pdsh/mod.c :
Fix reference of uninitialized modules, especially during
options processing.
2010-09-29 Mark Grondona <mgrondona@llnl.gov>
* config/ac_exec.m4 :
Fix references to SSH in AC_EXEC
* scripts/dshbak :
Fix googlecode issue 5 reported by Mattias Slabanja,
where dshbak was failing to coalesce differently zero-padded
hosts with -c.
2010-09-13 Mark Grondona <mgrondona@llnl.gov>
* config/ac_dshgroup.m4, configure :
Update --with-dshgroups help string to match other
configure --help output. Fix missing ','.
* src/pdsh/mod.h, src/pdsh/mod.c, src/pdsh/opt.c :
Don't unload conflicting (uninitialized) modules, instead
keep them for -V and -L output, and mark then as conflicting
to avoid confusion.
* src/pdsh/rcmd.c, src/pdsh/opt.c :
Fix a couple of compiler warnings.
2010-09-10 Mark Grondona <mgrondona@llnl.gov>
* src/modules/Makefile.am, src/modules/Makefile.in :
Use 'target_la_CPPFLAGS' instead of AM_CPPFLAGS for
per-module CPPFLAGS.
* src/modules/torque.c :
Error in pbs_disconnect() shouldn't be fatal.
* src/modules/torque.c :
Fix segfault with no default PBS server.
* src/modules/torque.c :
Minor fixup of some error messages in Torque module.
* : Re-run ./bootstrap
* config/ac_torque.m4, configure.ac, doc/pdsh.1.in,
pdsh.spec, src/modules/Makefile.am, src/modules/torque.c :
Add new Torque/PBS module from Mattias Slabanja.
2010-09-03 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.22.
* src/pdsh/mod.c :
Print an error if requested modules fail to initialize.
* src/pdsh/mod.c :
Delete any uninitialized modules after all modules that can
successfully be initialized have been.
* src/pdsh/mod.c :
Sort loaded modules first by priority, then by module name.
This will allow modules to be listed and initialized in
a reproducible order, instead of an arbitrary order.
* src/pdsh/opt.c :
Move POSIXLY_CORRECT=1 into opt_args_early().
* src/pdsh/opt.c :
Fix error in opt_args() when -M is used.
* src/pdsh/mod.c :
Ensure functions used by list_for_each always return 0
so that the list traversal isn't short-circuited by
recoverable errors.
* src/modules/genders.c :
Don't let genders_file be NULL. Instead manually set
to "/etc/genders" for improved error message, and to
avoid segfault when printing error message.
2010-09-02 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.21.
* doc/pdsh.1.in :
Document PDSH_GENDERS_DIR and PDSH_GENDERS_FILE.
* src/common/xstring.c :
Handle errors from XSI-compliant version of strerror_r()
in xstrerrorcat() implementation.
2010-09-01 Mark Grondona <mgrondona@llnl.gov>
* README.modules, doc/pdcp.1.in, doc/pdsh.1.in :
Update documentation: adding -M and PDSH_MISC_MODULES.
* src/pdsh/opt.c :
Add new option -M to allow named misc modules to be
pre-initialized before others, thus overriding which
module is loaded when there is a conflict.
* src/pdsh/mod.c :
Don't generate an error message when module options
conflict, since there is now a way to override which
module is loaded over another.
* src/pdsh/opt.c, src/pdsh/opt.h, src/pdsh/main.c :
Add opt_args_early function to process options that
need to be handled before module loading.
* src/pdsh/opt.c, src/pdsh/mod.c :
New environment variable PDSH_MISC_MODULES may be used to
force-initialize a list of misc modules before the others,
thus allowing a choice between conflicting modules.
* src/pdsh/main.c :
Call opt_env() before loading modules.
* src/pdsh/mod.c :
Only print module options if the module has been initialized.
* src/pdsh/mod.c :
Split module registration and initialization into two
separate functions. First register all modules, then try
to initialize them later. This will allow for better filtering
of conflicting modules.
* src/pdsh/mod.c :
Add an initialization member to module structure to
track whether a loaded module has been fully initialized.
2010-08-31 Mark Grondona <mgrondona@llnl.gov>
* src/modules/genders.c :
Don't require genders filename specified to -F to be an absolute
path. Instead, open genders file relative to PDSH_GENDERS_DIR,
which is /etc by default.
* src/modules/genders.c :
Allow alternate genders file to be specified with the env
var PDSH_GENDERS_FILE.
* src/common/hostlist.c :
Update to latest hostlist.c from LSD-Tools project with fix for
multiple brackets in hostlists from sf.net user don-fanucci.
2010-03-16 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/ltdl.c, src/pdsh/ltdl.h :
Update libltdl from latest RHEL5.4 libtool.
2009-09-29 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.20.
* src/pdsh/testcase.c (_test_xstrerrorcat) :
Ensure that the same strerror* function is used by the test
as is used in xstrerrorcat(), to avoid false test failures..
* src/pdsh/pcp_client.c (pcp_client) :
Switch use of list_for_each to explicit list iterator to avoid
serialization fo pdcp.
2009-05-21 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.19.
* configure.ac, config/ac_rcmd_rank_list.m4 :
Add new configure option --with-rcmd-rank-list= which may be
used to override default pdsh rcmd rank list (ordered list
of preferred rcmd connect modules).
* src/modules/genders.c :
Always apply pdsh_rcmd_type genders attribute, even if no
genders options are used.
* src/pdsh/mod.c :
Make pdsh module code reentrant safe. This fixes a bug where
pdsh was not translating names to alternates with the genders
module, because the global list iterator was being reset by
reentrant calling of module code.
Patch from Pythagoras Watson <py at llnl dot gov>.
* src/common/error.c :
Add lsd_nomem_error function to better handle fatal errors
from LSD-Tools functions when out of memory.
* src/pdsh/dsh.c, src/pdsh/opt.c, src/pdsh/rcmd.c :
Avoid pdsh core dump when no rcmd modules are found.
Patch from Pythagoras Watson <py at llnl dot gov>.
* pdsh.spec :
%{_libdir}/pdsh should be owned by pdsh rpm.
Patch from Pythagoras Watson <py at llnl dot gov>.
2009-03-24 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.18.
* src/modules/sshcmd.c :
Avoid printing sshcmd errors twice. Patch from
Paul D. Smith <psmith at users.sourceforge.net>.
* doc/pdsh.1.in :
Add more detail to pdsh manpage about nodeattr module.
2008-11-25 Mark Grondona <mgrondona@llnl.gov>
* config/ac_ssh.m4, configure :
Allow --without-ssh-connect-timeout-option (passed to ./configure)
to disable SSH connect timeout option in addition to
--with-ssh-connect-timeout=none.
2008-10-21 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/pcp_client.c (_pcp_sendfile) :
Do not return -1 from _pcp_sendfile as this causes early abort from
list_for_each. Return 0 instead to fix recursive pdcp.
2008-09-26 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c, doc/pdcp.1.in :
Add pdcp -e option to explicitly specify remote path to pdcp binary.
2008-09-22 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.17.
* config/ac_ssh.m4, configure :
Don't use -q option to grep.
* Makefile.in, config.h.in, config/Makefile.in,
configure, doc/Makefile.in, etc/Makefile.in,
scripts/Makefile.in, src/Makefile.in, src/common/Makefile.in,
src/modules/Makefile.in, src/pdsh/Makefile.in,
src/qsnet/Makefile.in, testsuite/Makefile.in,
testsuite/pdsh.test/Makefile.in :
Re-run ./bootstrap.
* config/acx_pthread.m4 :
Update to latest version of ACX_PTHREAD macro from
autoconf-archive.cryp.to/acx_pthread.html.
2008-09-18 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c :
Ignore multiple consecutive colons in host list supplied to -w and
other target host input methods. Thus foo::bar is no longer treated
as rcmd_type = foo, and target host = :bar. Instead the target host
is just foo::bar. This behavior is probably more correct and least
surprising to users (who probably rarely use the rcmd_type:hosts
syntax). Plus, there is at least one user making use of proxy::hosts
to handle automatic proxying of ssh connections.
2008-09-03 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/xpopen.c : glibc 2.8 no longer defines ARG_MAX.
Use sysconf (_SC_ARG_MAX) instead if it is available.
Fix provided by Tom 'spot' Callaway via sf.net.
2008-08-06 Mark Grondona <mgrondona@llnl.gov>
* src/common/hostlist.c :
Update to latest hostlist code from LSD-Tools.
* src/pdsh/privsep.c (privsep_server) :
Fix handling of read() return code as found by Coverity.
2008-06-13 Mark Grondona <mgrondona@llnl.gov>
* src/common/hostlist.h :
Update to latest hostlist.h from LSD-Tools project.
This version includes unistd.h (patch by Ashley Pittman).
Issue was rediscovered Jeff Quaintance when I forgot to
include Ashley's patch in the last version of pdsh. D'oh!
2008-04-01 Mark Grondona <mgrondona@llnl.gov>
* scripts/dshbak : Allow for ':' in pdsh output lines.
Thanks to Ashley Pittman for the patch.
2008-03-19 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.16
* scripts/dshbak :
Do not include leading space in output lines (which is added
by pdsh) to data printed by dshbak. Thanks to Ashley Pittman
for the patch.
* scripts/dshbak :
Remove -s (sort) option to dshbak. Always sort output instead.
2008-03-11 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c :
When specifying rcmd_type via -w (i.e. [rcmd_type:][user@]host)
have rcmd_type apply across all hosts until the next rcmd
specification. That is ssh:host1,host2 now uses ssh for both
host1 and host2. Prior to this change, ssh would only be used
to contact host1. (Same change for user)
* src/modules/genders.c :
Don't read genders file if no genders options were specified.
* src/pdsh/opt.c :
Check validity of user-supplied fanout.
* src/pdsh/opt.c :
Avoid unecessary error message about missing WCOLL file by
only reading that file if no other node selection options
have been specified.
2008-01-29 Mark Grondona <mgrondona@llnl.gov>
* src/modules/mcmcd.c, src/modules/xrcmd.c, src/pdsh/dsh.c,
src/pdsh/mod.c, src/pdsh/opt.c :
Fix minor defects as reported by Coverity.
* src/common/hostlist.h, src/common/hostlist.c :
Update to the latest hostlist code from LSD-Tools.
2007-10-24 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.15
* doc/pdcp.1.in, doc/pdsh.1.in : Update documentation to reflect
support for connect timeout for some SSH implementations, and
ability to use suffixes on hostlist expressions.
2007-10-23 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec : Add ncurses-devel to BuildRequires if building with
readline support.
* src/common/pipecmd.h, src/common/pipecmd.c :
Added pipecmd_target function to return target hostname from
pipecmd object.
* src/modules/sshcmd.c : Refactor ssh module to use pipecmd.c.
* src/modules/sshcmd.c : Add support for connect timeout (-t)
to ssh module for openssh using -oConnectTimeout=%d by default.
* config/ac_ssh.m4 : Add --with-ssh-connect-timeout-option=STRING
to ./configure. Allows setting SSH's connect timeout option,
"-oConnectTimeout=%d by default", or disabling connect timeout
alltogether for SSH with "none".
2007-08-22 Albert Chu <chu11@llnl.gov>
* src/pdsh/pcp_client.c, src/pdsh/pcp_server.c : Remove
advertising clause per letter from Berkeley.
2007-06-22 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec : Redesign of specfile conditionals to allow
easier modification of defaults.
* : tag pdsh-2.14.
2007-06-20 Mark Grondona <mgrondona@llnl.gov>
* src/modules/slurm.c : Include SLURM headers after all pdsh
includes to avoid redefinition of bool type.
* configure.ac, config/ac_exec.m4, pdsh.spec,
src/modules/Makefile.am, config/Makefile.am :
Allow conditional and static build of "exec" module.
* : Re-run ./bootstrap.
* src/pdsh/mod.c : Don't exclude filename member of module
struct when building static modules. Fix for compile error.
* src/modules/execcmd.c : Fix for static module build.
* config/ac_exec.m4, configure : Enable "exec" rcmd module
by default.
2007-06-07 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.13.
2007-06-06 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/wcoll.c :
Ignore blank and comment lines in WCOLL file instead of
generating warning.
* src/pdsh/rcmd.c :
Add "exec" rcmd method to list of default rcmd modules.
* scripts/dshbak :
Attempt to compress ranges of hosts when numerically
named hosts have non-numeric suffixes.
2007-06-04 Mark Grondona <mgrondona@llnl.gov>
* src/common/pipecmd.c, src/common/pipecmd.h :
Add new "pipecmd" API for executing arbitrary commands.
* src/modules/execcmd.c :
Add new "exec" rcmd module which uses pipecmd to execute
arbitrary process in place of rcmd connect method. First
pdsh "remote" arg is the command to execute, followed
by any arguments. "%h", "%u", and "%n" are expanded to
the target host, remote username, and rank [0-N] respectively.
* src/pdsh/opt.h, src/pdsh/opt.c :
Save remote argv array for later possible use. This is more
useful for the 'exec' rcmd module that the opt->cmd string,
because it preserves the shell's argument parsing. Functions
for grabbing the remote argv and argc were added to opt.h.
* configure.ac, src/common/Makefile.am, src/modules/Makefile.am :
Build the execcmd module by default with pdsh.
* src/pdsh/testcase.c :
Add a testcase entry for pipecmd. There is an ulterior motive
here: Without this testcase, pdsh would never call pipecmd
functions, and thus the symbols would not be available to
modules (e.g. execcmd and later sshcmd).
* doc/pdsh.1.in :
Add documentation for the exec rcmd module.
* configure, src/common/Makefile.in, src/modules/Makefile.in :
Rerun ./bootstrap.
* src/pdsh/opt.c, doc/pdsh.1.in :
Add "-N" option to disable hostname: prefix on lines of
output.
2007-05-07 Daniel J. Blueman <daniel@quadrics.com>
* pdsh.spec : Add rpmbuild "--without pam" option passthrough.
* pdsh.spec : Generalise "elan3" to "Quadrics QsNet".
2007-05-07 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c : Check for command timeout when rsh thread
poll is interrupted to avoid erroneous timeouts by stray
signal interruptions.
2007-05-03 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c : Block SIGCHLD in pdsh threads. Fixes case
where SIGCHLD (from use of ssh module) is delivered to
unexpected thread causing the thread to think it has been
timed out by wdog thread.
2007-01-15 Mark Grondona <mgrondona@llnl.gov>
* Makefile.am, src/pdsh/Makefile.am, doc/Makefile.am,
Makefile.in, src/pdsh/Makefile.in, doc/Makefile.in :
Generate some 'uninstall-local' targets so that 'make uninstall'
works as expected. Generate warning if files still exist
in pkglibdir after uninstall. Rerun ./bootstrap.
2006-12-12 Mark Grondona <mgrondona@llnl.gov>
* src/modules/sshcmd.c : Fix mid-block declaration that
could cause compilation problem for some machines.
2006-12-11 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c : Undocumented -K option to explicitly keep
domain names in output labels.
* : tag pdsh-2.12.
2006-12-10 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/mod.c : Issue warning if module type/name is loaded
more than once, and delete module with lower priority.
2006-12-09 Mark Grondona <mgrondona@llnl.gov>
* src/common/macros.h : Only define bool if "true" and "false"
are not already defined. Avoids compile error when they are
macros.
2006-12-07 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec, doc/Makefile.am, doc/Makefile.in,
src/pdsh/Makefile.am, src/pdsh/Makefile.in :
Install and package rpdcp and its man page.
* src/common/err.h, src/common/err.c : Optionally keep domain
part of name with "%S" format specifier when err_no_strip_domain()
is called.
* src/common/dsh.c : If any two targets have differing domains,
do not strip the domain in output labels.
* src/modules/slurm.c : Modify help string to indicate that "all"
is a valid parameter to -j option.
2006-12-07 Albert Chu <chu11@llnl.gov>
Support a Reverse pdcp option.
* src/pdsh/pcp_server.c : Remove global infd and outfd file descriptors.
Set and pass them around via a structure. End server gracefully
rather than through exit(). Adjust API for more flexible use.
* src/pdsh/main.c (main) : Support new pcp_server() API.
* src/pdsh/pcp_client.h, src/pdsh/pcp_client.c : New files.
* src/pdsh/dsh.c (_rexpand_dir, _expand_dir, _rcp_write,
_rcp_send_file_data, _rcp_sendstr, _rcp_response, _rcp_sendfile) :
Removed due to new common functions in pcp_client files.
* src/pdsh/dsh.c (dsh, _rcp_thread) : Use new pcp_client functions.
* src/pdsh/opt.c (_infile_names_check) : New function.
* src/pdsh/opt.h, src/pdsh/opt.c : Add support for reverse copy (rpdcp)
and pcp client (-Z) options and checks. Use _infile_names_check for
common checks.
* src/pdsh/dsh.c (dsh, _rcp_thread), src/pdsh/main.c (main) :
Support reverse copy.
* src/pdsh/pcp_server.c (pcp_server) : Remove setuid call.
Unnecessary for pdsh/pdcp, a remnant from old rcp code.
* doc/pdcp.1.in : Update appropriately.
2006-12-06 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c : Don't close fd in _do_output().
2006-12-05 Mark Grondona <mgrondona@llnl.gov>
* src/modules/slurm.c : Allow "all" argument to -j to select
all nodes with SLURM jobs as targets.
* doc/pdsh.1.in : Document "all" argument to -j option.
* config/ac_msghdr_accrights.m4 : Add missing m4 include file.
2006-12-04 Mark Grondona <mgrondona@llnl.gov>
* configure.ac : Define _POSIX_PTHREAD_SEMANTICS for Solaris
to get version of sigwait(2) with two arguments.
* config/ac_msghdr_accrights.m4, configure.ac, config/Makefile.am :
Add check for msg_accrights in struct msghdr.
* src/pdsh/privsep.c : Use msg_accrights instead of msg_control
if it exists. (Fix for compile on Solaris)
* src/pdsh/pcp_server.c : Ensure roundup is defined.
* aclocal.m4, config.h.in, configure, Makefile.in,
config/Makefile.in, doc/Makefile.in, etc/Makefile.in,
scripts/Makefile.in, src/Makefile.in, src/common/Makefile.in,
src/modules/Makefile.in, src/pdsh/Makefile.in,
src/qsnet/Makefile.in, testsuite/Makefile.in,
testsuite/pdsh.test/Makefile.in :
Re-run bootstrap.
* src/common/split.h, src/common/split.c :
Add list_split_append() to append results of string split onto
existing list. Also, don't allocate new string in list_join().
* src/pdsh/opt.c : Update callers of list_join().
* src/common/split.c : list_split_append() returns list_split() if
list argument is NULL.
* src/modules/dshgroup.c, src/modules/genders.c,
src/modules/netgroup.c, src/modules/nodeattr.c,
src/modules/slurm.c :
Convert to use list_split_append() instead of statically defined
helper functions.
2006-08-25 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec : Remove erroneous "Requires: whatsup" from netgroup
and dshgroup. Remove Conflicts from machines. Build netgroup and
dshgroup by default since they have no build requirements.
2006-08-08 Mark Grondona <mgrondona@llnl.gov>
* src/modules/genders.c : Allow default user name to also be
specified to pdsh_rcmd_type attr with "user@".
2006-08-02 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c (_signals_thread) : Add missing return from
signals thread.
2006-07-27 Mark Grondona <mgrondona@llnl.gov>
* src/common/hostlist.c : Update to latest rev from LSD-Tools, which
fixes some bugs found by Coverity.
* src/common/dsh.c, src/common/privsep.c : Add checks for return
codes from pthread_mutex_lock/unlock. (Coverity).
2006-07-26 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.h, src/pdsh/dsh.c : Allow ctrl-Z (SIGTSTP) issued
within 1s of ctrl-C to cancel pending threads (those threads which
have not yet begun issuing the remote command).
* doc/pdsh.1.in, doc/pdcp.1.in : Update documentation.
* : tag pdsh-2.11.
2006-07-18 Mark Grondona <mgrondona@llnl.gov>
* scripts/dshbak : Add new -s option to sort output. Contributed by
tdussa at users.sourceforge.net.
2006-07-06 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c : Fix bug where WCOLL hosts were unconditionally
added to list of targets. Prior behavior was to have -w override
WCOLL. [Reported by Fergal McCarthy].
2006-06-05 Jim Garlick <garlick@llnl.gov>
* doc/pdsh.1.in : fix a few typos [Chris Pepper]
2006-04-07 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/mod.c : Report more specific errors when path to
pdsh modules is not secure, and include the real path to the
directory with the permissions problem.
2006-03-22 Mark Grondona <mgrondona@llnl.gov>
* src/common/split.c : Fix missing headers.
2006-03-22 Jim Garlick <garlick@llnl.gov>
* src/xcpucmd.c : Use new local exec facility and set args to
run /bin/sh -c 'cmd'.
2006-03-22 Mark Grondona <mgrondona@llnl.gov>
* src/common/split.c, src/common/split.h, src/pdsh/opt.c :
Move list_join() from pdsh/opt.c to common/split.c.
* src/pdsh/rcmd.h, src/pdsh/rcmd.c, src/pdsh/dsh.c,
src/pdsh/opt.c, src/modules/sshcmd.c, src/modules/genders.c :
Missing updates from rcmd-rewrite branch. Allow user@
to be specified in -w host spec. Add rcmd_opt_set() to
allow rcmd modules to set rcmd-specific options (e.g. resolve_hosts).
* testsuite/pdsh.test/pdsh.exp :
Add test for "," in host range. Increase version number.
* pdsh.spec : Add COPYING to docs. Remove -n from %setup.
* : tag pdsh-2.10.
2006-03-21 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/main.c (_interactive_dsh) :
Add support for command history in interactive mode when using
readline. History file is placed in ~/.pdsh/history.
Original patch from Sebastien Cabaniols <Sebastian.Cabaniols@hp.com>.
2006-03-16 Jim Garlick <garlick@llnl.gov>
* src/modules/xcpucmd.c : Add support support for signals.
Change mini shell script so -S hack will work.
2006-03-15 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/mod.c : Remove error message when loading duplicate
module in pdsh. This is OK since we removed code which
only loaded .la's, we could be loading corresponding .so
after the .la (or vice versa).
* pdsh.spec : Remove unneeded .la and .a files in packages.
* : tag pdsh-2.9
2006-03-15 Jim Garlick <garlick@llnl.gov>
* src/modules/xcpucmd.c : Use io session file instead of
stdout and stdin session files. Enable pdcp support.
* doc/pdsh.1.in, doc/pdcp.1.in : Describe xcpu module.
2006-03-14 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/mod.c : Remove code which only loaded pdsh modules via
*.la files. This probably doesn't save much time and didn't allow
us to only install .so's on some systems.
* src/common/split.c : Include xmalloc.h for Strdup () prototype.
2006-03-14 Jim Garlick <garlick@llnl.gov>
* src/modules/xcpucmd.c, config/ac_xcpu.m4 : New (experimental).
* configure.ac, config/Makefile.am, src/modules/Makefile.am :
Add xcpu module support.
* src/pdsh/rcmd.c : set precedence for xcpu module.
* README.modules, NEWS : List xcpu module.
2006-02-24 Mark Grondona <mgrondona@llnl.gov>
* config/ac_debug.m4, configure :
Do not strip executables on Mac OSX, this seems to remove all access
to global dynamic symbols for loaded modules.
* src/pdsh/Makefile.am, src/pdsh/Makefile.in :
Do not install pdsh/pdcp setuid root by default anymore.
* pdsh.spec : Apply Ben Woodard's <woodard@redhat.com> patches
for Fedora acceptance.
2006-02-14 Mark Grondona <mgrondona@llnl.gov>
* : Update Copyright dates.
2006-02-13 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec : Modified to comply with rpmlint
(Ben Woodard <woodard@redhat.com>).
* README, README.modules, doc/pdsh.1.in, NEWS : Update documentation.
2006-02-08 Mark Grondona <mgrondona@llnl.gov>
* src/modules/sshcmd.c : Allow arguments to ssh command to be
generated at runtime, and thus overrode or appended to by
new env vars PDSH_SSH_ARGS and PDSH_SSH_ARGS_APPEND.
2006-02-07 Mark Grondona <mgrondona@llnl.gov>
* config/ltmain.sh : Remove and regenerate ltmain.sh.
2006-02-02 Mark Grondona <mgrondona@llnl.gov>
* src/modules/sshcmd.c : Change ssh_pid type from int to pid_t.
2006-01-20 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c (_thd_init) : Initialize th->resolve_hosts.
* src/pdsh/privsep.c (privsep_rresvport, privsep_server) :
Send lport argument passed to privsep_rresvport to privsep
server so it can pass this value to rresvport() unchanged.
This is required because lport must be initialized on some
systems.
2006-01-19 Mark Grondona <mgrondona@llnl.gov>
* config/libtool.m4 : Update libtool.m4 to version from 1.5.22.
Fixes some problems with dlopen and dlsym on OS X.
* configure.ac : Test for existence of sys/uio.h.
* src/pdsh/privsep.c : Need to #include <sys/uio.h> on OS X for
struct iovec declaration.
* configure, aclocal.m4, Makefile.in, scripts/Makefile.in,
src/Makefile.in, src/common/Makefile.in, src/modules/Makefile.in,
src/qsnet/Makefile.in, src/pdsh/Makefile.in, testsuite/Makefile.in
testsuite/pdsh.test/Makefile.in, config/Makefile.in, doc/Makefile.in,
etc/Makefile.in:
Rerun ./bootstrap with autoconf 2.59, automake 1.9.6, libtool 1.5.22.
2006-01-11 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/privsep.c, src/pdsh/privsep.h, src/pdsh/main.c :
Add "privilege separation" capability to pdsh to support safely
running rsh/mqshell and mrsh/ssh/etc. together in the same process.
During initialization, if pdsh detects it is running setuid,
a child process is forked to retain elevated privileges, while
pdsh swaps effective uid back to that of the user for the remainder
of the run. The privileged process is used to bind reserved ports
on behalf of pdsh.
* src/modules/xrcmd.c, src/modules/qcmd.c, src/modules/k4cmd.c :
Use priv_rresvport() instead of rresvport().
* src/modules/mcmd.c, src/modules/sshcmd.c, src/modules/mqcmd.c :
If running with effective uid 0, and real user id is not also 0,
drop all privileges (as a sanity check).
* src/modules/genders.c : Add hostlist_uniq() after converting genders
nodelist to hostlist format.
2006-01-04 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/rcmd.c, src/pdsh/rcmd.h : Added a new rcmd module
interface API which allows for multiple rcmd modules to be
loaded in a single execution of pdsh.
* src/pdsh/mod_rcmd.c, src/pdsh/mod_rcmd.h : Removed.
* src/pdsh/opt.c : Update to use new rcmd interface.
Process hosts passed to on command line to accept rcmd type prefix
as rcmd_type:hosts,... Allow multiple invocations of -w.
* src/pdsh/dsh.c, src/pdsh/dsh.h :
Update to use new rcmd interface.
* src/pdsh/Makefile.am, src/pdsh/Makefile.in :
Remove mod_rcmd.[ch] and add rcmd.[ch].
* src/modules/genders.c : Add support for pdsh_rcmd_type genders
attribute which will change the default rcmd type for a given set
of hosts.
2005-12-22 Mark Grondona <mgrondona@llnl.gov>
* src/common/split.c, src/common/split.h : Added.
Move list_split() implementation which was used in several
modules into pdsh common code.
* src/modules/genders.c, src/modules/sdr.c, src/modules/nodeattr.c,
src/modules/dshgroup.c, src/modules/netgroup.c, src/modules/slurm.c :
Use list_split() from src/common/split.c instead of internal
_list_split() implementation.
2005-12-15 Mark Grondona <mgrondona@llnl.gov>
* src/modules/netgroup.c : Add netgroup module providing support
for reading list of targets from /etc/netgroup file or NIS using
standard setnetent/getnetent calls.
* configure.ac, pdsh.spec, config/ac_netgroup.m4, doc/pdsh.1.in,
src/modules/Makefile.am :
Build, package, and document dshgroup module.
* : Rerun ./bootstrap
2005-12-06 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c : Move processing of -x (exclude hosts by name)
until after mod_postop() has been called, because mod_postop()
may modify the list of target hosts.
* src/modules/sshcmd.c (_pipecmd) : Close all file descriptors >2
before exec'ing ssh, so that one ssh process' stdin doesn't remain
open in a subsequently invoked ssh. We tried to do this by setting
the close-on-exec flag on the fds when the socketpair was created
in pdsh, but this introduces a race between when the fd is opened
to when the flag is set where an ssh in another thread can be
created. Closing all fds greater than 2 should work in all cases
and is simpler.
2005-10-26 Mark Grondona <mgrondona@llnl.gov>
* src/modules/xrcmd.c : Fix typo in error message "k4cmd" -> "rcmd".
Patch supplied by Joe Ramey <ramey@ti.com>.
2005-10-13 Mark Grondona <mgrondona@llnl.gov>
* : tag pdsh-2.8.
2005-10-10 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/mod_rcmd.h, src/pdsh/mod_rcmd.c : Replace mod_rcmd()
function with mod_rcmd_create() which returns a created struct
rcmd_info with created stdout/err file descriptors and module-specific
opaque data. The created rcmd_info is freed with mod_rcmd_destroy()
before each dsh thread exits.
* src/pdsh/mod.h, src/pdsh/mod.c : Allow modules to optionally
export an rcmd_destroy function for cleanup of rcmd_info structure
and associated opaque data. Change rcmd_signal interface to pass
struct rcmd_info instead of efd, and rcmd interface passes
pointer to void * argument (module-specific opaque data).
* src/pdsh/dsh.h, src/pdsh/dsh.c : Replace thd_t fd and efd members
with pointer to struct rcmd_info created by call the
mod_rcmd_create(). Call mod_rcmd_destroy() before thread termination.
* src/modules/sshcmd.c : Remove ssh_reaper thread and collect ssh
process exit status in new "rcmd_destroy" function.
* src/modules/mqcmd.c, src/modules/k4cmd.c, src/modules/xrcmd.c,
src/modules/mcmd.c, src/modules/qcmd.c :
Update remaining rcmd modules to reflect changes in
pdsh_rcmd_operations components.
* src/modules/sdr.c (_sdr_cache_hresp_line) : Ignore host_responds
for node ids with no node information.
2005-09-30 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/qsnet/qswutil.h : fix compile warning against definition
of QSW_RAILMASK_MAX.
2005-09-22 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c (_wdog) : Don't sleep for connect_timeout seconds
at beginning of watchdog poll (breaks command timeout).
* src/pdsh/dsh.c (_rsh_thread) : Send SIGTERM to commands that have
been timed out by watchdog. (for SSH, this allows us to kill
the ssh process but not the remote commands)
2005-09-22 Mark Grondona <mgrondona@llnl.gov>
* doc/pdsh.1.in : Add note in LIMITATIONS about inability for
pdsh to guarantee remote commands are terminated after command
timeout.
2005-09-21 Mark Grondona <mgrondona@llnl.gov>
* src/common/dsh.c (_rcp_response) : Print error string recvd from
remote RCP server. Remove confusing "Failed to initiate RCP protocol"
error message.
* src/common/dsh.c (_rcp_response) : Remove legacy comments about
pcp response codes (we never send a response prefixed with 2) and
other small changes to rcp_response.
2005-09-14 Mark Grondona <mgrondona@llnl.gov>
* src/common/hostlist.c : Update to latest hostlist code which
allows a suffix on hostlist expressions, e.g. foo[0-10]-bar.
2005-08-26 Mark Grondona <mgrondona@llnl.gov>
* src/modules/dshgroup.c (_read_groupfile) : module was testing
for backupfile (/etc/dsh/group/%s), after access() call for
default ($HOME/.dsh/group/%s) failed, but was still opening
default instead of backupfile. (Joe Ramey <ramey@it.com>)
2005-08-17 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c (dsh) : Remove debug output when processing
remote return codes.
2005-08-15 Mark Grondona <mgrondona@llnl.gov>
* pdsh.spec : Allow PDSH_WITH_OPTIONS and PDSH_WITHOUT_OPTIONS
to be used to specify which conditional subpackages to build with
rpmbuild as well as existing --with and --without flags.
* src/modules/genders.c : Tweak module help info for clarity.
* : tag pdsh-2.7
2005-08-12 Mark Grondona <mgrondona@llnl.gov>
* src/modules/dshgroup.c : Add dshgroup module providing
-g/-X groupname to read list of targets from groupname file in
~/.dsh/group/ or /etc/dsh/group/groupname.
* configure.ac, pdsh.spec, config/ac_dshgroup.m4,
src/modules/Makefile.am :
Build, package, and document dshgroup module.
* src/pdsh/dsh.c : Add alternate definition of PTHREAD_STACK_MIN in
case definition is missing from pthread.h.
2005-08-10 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/dsh.c : Include fd.h to avoid warning.
* src/modules/sshcmd.c : Fix some compile warnings.
* configure.ac : Add AM_MAINTAINER_MODE to disable maintainer-mode by
default. Remove AC_AIX which appears to leave CFLAGS set and disrupt
proper functioning of other macros. Run ./bootstrap.
2005-08-09 Mark Grondona <mgrondona@llnl.gov>
* src/modules/sshcmd.c : Add close-on-exec flag to file descriptors
passed back from sshcmd() so they aren't inadvertently left open
in subsequently invoked ssh commands.
2005-08-08 Mark Grondona <mgrondona@llnl.gov>
* src/pdsh/opt.c (opt_default, _find_path) : Initialize path_progname
for both pdsh and pdcp.
* src/pdsh/mod.h, src/pdsh/mod.c, src/pdsh/main.c :
Accept module path element as secure if owner matches pdsh/pdcp
executable ownership, as well as root or current user.