forked from arthurdejong/nss-pam-ldapd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
2316 lines (1477 loc) · 76.4 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
2015-03-11 Tim Rice <[email protected]>
* [ae08830] common/Makefile.am, compat/Makefile.am, configure.ac,
nss/Makefile.am, pam/Makefile.am: Use correct PIC arg for
non-GCC compilers
2015-03-22 Arthur de Jong <[email protected]>
* [fdbca17] config.sub: Update files from latest automake
2015-03-22 Arthur de Jong <[email protected]>
* [9f9a5c5] nss/networks.c: Fix for networks lookup under Solaris
This fixes a byte order issue when nscd is running.
2015-03-22 Arthur de Jong <[email protected]>
* [52ea3f5] configure.ac: Add checks to configure
This adds tests for a function and type used in the code.
2015-03-22 Arthur de Jong <[email protected]>
* [4ec1c08] nslcd/daemonize.c: ENODATA is missing on FreeBSD
FreeBSD doesn't have ENODATA so we use ENOATTR instead.
2015-03-22 Arthur de Jong <[email protected]>
* [b2563b0] compat/nss_compat.h, configure.ac: Remove use of
irs-nss.h
This was a compatibility leftover from the nss_ldap days.
2015-03-21 Arthur de Jong <[email protected]>
* [4c5a3c9] tests/test_clock.c: Prevent numer overflow in test_clock
2015-03-21 Arthur de Jong <[email protected]>
* [0420232] nslcd/nslcd.c, nslcd/nsswitch.c, nss/Makefile.am,
tests/testenv.sh: Various small fixes when using --with-module-name
This updates the test framework to support --with-module-name,
ensures that exports.map is rebuilt when configure is re-ran,
fixes parsing of nsswitch.conf (to determine what to return for
passwd lookups) and fixes the check for _nss_ldap_version.
2015-03-21 Arthur de Jong <[email protected]>
* [788475f] nss/common.h: Also support platforms without TLS
This disables the use of thread-local storage in the NSS module
when it is not available in libc. This results in the get*ent()
functions not being thread-safe. However, on most platforms they
are not expected to be thread-safe anyway.
2015-03-20 Dalibor Pospíšil <[email protected]>
* [95d621e] man/nslcd.conf.5.xml: Document that multiple URIs can
be specified
Update nslcd.conf man page that multiple URIs can be set by
using more uri lines or more URIs defined on one uri line.
https://bugzilla.redhat.com/show_bug.cgi?id=1204195
2015-03-11 Patrick McLean <[email protected]>
* [fa6affc] common/tio.c, nslcd/attmap.c, nslcd/cfg.c,
nslcd/myldap.c: Fix formatting of size_t values
In several places the code used a %d format to print a size_t
variable. On amd64 at least size_t is an unsigned long, so use
%lu instead.
An alternative would be to use %ud for size_t and %zd fo ssize_t
but not all platforms seem to support that formatter.
2015-03-11 Patrick McLean <[email protected]>
* [246aba5] nslcd/myldap.c, pam/pam.c: Avoid comparison of static
array to null pointer
There are several places where a static length array in a struct
is compared to a null pointer. These comparisons will always
be false, since an array in a struct is not actually a pointer,
so they can be removed.
2015-03-10 Patrick McLean <[email protected]>
* [d0f896a] AUTHORS, nslcd/nslcd.c: Don't let the oom killer
kill nslcd
Adjust the Linux OOM (Out-Of-Memory) killer score by -1000 for
nslcd so that it should not be killed.
2015-01-19 Arthur de Jong <[email protected]>
* [ee82d2f] .gitignore, configure.ac, nslcd/nslcd.c,
nss/Makefile.am, nss/aliases.c, nss/bsdnss.c, nss/common.c,
nss/common.h, nss/ethers.c, nss/group.c, nss/hosts.c,
nss/netgroup.c, nss/networks.c, nss/passwd.c, nss/protocols.c,
nss/prototypes.h, nss/rpc.c, nss/services.c, nss/shadow.c,
pam/pam.c, pynslcd/constants.py.in, pynslcd/pynslcd.py: Allow
configuration of NSS and PAM names
This introduces the --with-module-name configure option to
allow building of NSS and PAM modules with different namespaces
than ldap.
2015-01-12 Mark R Bannister <[email protected]>
* [ed8b312] nss/hosts.c: Fix uninitialised variable
This fixes a bug in the NSS library when encountering IPv6
addresses in the hosts map.
2014-12-12 Arthur de Jong <[email protected]>
* [8b33057] nslcd/myldap.c: Avoid accessing searches outside array
Thanks David Binderma for pointing this out.
Note that in practical situations this should not result in any
errors due to the position of searches within the ldap_session
struct.
2014-11-02 Arthur de Jong <[email protected]>
* [9ee854e] man/nslcd.conf.5.xml: Document that rootpwmoddn needs
to exist
See
http://lists.arthurdejong.org/nss-pam-ldapd-users/2014/msg00166.html
2014-10-10 Arthur de Jong <[email protected]>
* [4262122] nslcd/nslcd.c: Fix format string
Thanks Jianhai Luan. 2014-10-04 Arthur de Jong
* [1d3b19b] nslcd/nslcd.c: Block signals sooner to avoid race
conditions
2014-08-27 Jason Luan <[email protected]>
* [78627c9] nslcd/cfg.c, nslcd/group.c, nslcd/nslcd.c,
nslcd/passwd.c: uid_t/gid_t should be formatted as unsigned long
mmkfilter_passwd_byuid()/mkfilter_group_bygid() get wrong filter
string because "%d" will return negative when uid/gid larger
than 2^31, and result to "Authentiction failure".
This also changes the other places where uid_t or gid_t values
are formatted.
2014-09-21 Arthur de Jong <[email protected]>
* [a726d29] nslcd/daemonize.c: Fix issues with daemonising
This fixes a problem with a buffer that could end up padded
with garbage.
This also clarifies the code a bit and adds extra logging for
errors that could occur during daemonising.
2014-06-30 Tim Harder <[email protected]>
* [82e4423] nslcd/myldap.c: Minor comment spelling fix
2014-06-30 Tim Harder <[email protected]>
* [2950797] AUTHORS, nslcd/myldap.c: Check a socket's connectivity
before trying to use it
This alleviates some cases where multi-second lag occurs before a
query returns due to some or all connections having been closed
by the peer, e.g. a load balancer timing out old connections,
but they are all tried before opening new connections.
Tested and working on Linux.
2014-06-20 Arthur de Jong <[email protected]>
* [1765e34] nslcd/common.h: Fix copy-pasto
2014-06-12 Arthur de Jong <[email protected]>
* [9516479] tests/test.ldif, tests/test_nsscmds.sh: Use other IP
range for tests
This uses IP addresses from the RFC 5737 TEST-NET-1 range that is
meant for use in documentation. This avoids issues with running
the tests environments that also use the 10.0.0.0/8 range.
2014-06-06 Arthur de Jong <[email protected]>
* [b3cf0aa] AUTHORS, ChangeLog, NEWS, configure.ac,
man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml:
Get files ready for 0.9.4 release
2014-06-06 Arthur de Jong <[email protected]>
* [abb2452] nss/services.c: Return correct port number on Solaris
This is a small fix for when using nscd (which still does not
seem to work completely). The port is stored in network byte
order but should be printed in host byte order.
2014-06-06 Arthur de Jong <[email protected]>
* [b977d3f] tests/lookup_groupbyuser.c: Add missing include
for FreeBSD
2014-06-06 Arthur de Jong <[email protected]>
* [258d671] nslcd/pam.c: Fix password modification by root
This fixes 15fc13c.
2014-06-06 Arthur de Jong <[email protected]>
* [8eeb1cc] common/tio.c: Clear proper buffer length
This fixes 3d29861.
2014-06-06 Arthur de Jong <[email protected]>
* [3d65b84] nslcd/common.h: Fix code indentation
This fixes 2274b41.
2014-06-06 Arthur de Jong <[email protected]>
* [e867727] config.guess, config.sub: Update files from latest
automake
2014-06-05 Arthur de Jong <[email protected]>
* [f5ee208] pynslcd/cache.py: Fix comment
2014-06-05 Arthur de Jong <[email protected]>
* [13483f9] .gitignore, configure.ac, tests/Makefile.am,
tests/lookup_groupbyuser.c: Introduce lookup_groupbyuser test
command
This command can be used to perform a lookup using getgrouplist()
to present a list of returned numeric group ids. This can be
used to avoid the additional lookups that are done with the id
and groups commands.
2014-05-14 Arthur de Jong <[email protected]>
* [3d29861] common/tio.c, nslcd/myldap.c, nslcd/pam.c: Clear
buffers before free-ing
This clears most buffers that may hold credentials at one point
before free()ing the memory.
2014-05-08 Arthur de Jong <[email protected]>
* [aa1d810] HACKING: Clarify code contribution
2014-05-04 Arthur de Jong <[email protected]>
* [94eacb5] nslcd/pam.c: Improve error logging of user login failures
2014-05-04 Arthur de Jong <[email protected]>
* [ca36a50] nslcd/myldap.c: Also extract policy controls on
BIND failure
This ensures that controls returned by an LDAP server as part of
a failed BIND operation are also returned. This makes it possible
to distinguish between a wrong password and an expired password.
This also only logs the BIND operation result on DEBUG level
(the error is logged later on).
2014-05-04 Arthur de Jong <[email protected]>
* [d6163e2] configure.ac: Use FreeBSD lib directory and SONAME
on Dragonfly
2014-05-04 Arthur de Jong <[email protected]>
* [f6f3730] README, man/nslcd.conf.5.xml: Small documentation
improvements
This includes a number of minor changes to the documentation. This
also documents the children search scope (related to 2caeef4).
2014-05-04 Arthur de Jong <[email protected]>
* [ed79110] nslcd/daemonize.c, nslcd/nslcd.c: Log daemonising
failures
This also clears errno in the main function to ensure that no
incorrect errno value is logged on errors.
2014-05-04 Arthur de Jong <[email protected]>
* [18d05b0] .gitignore, tests/Makefile.am, tests/test_attmap.c:
Add a test for setting member attribute mapping
2014-05-04 Arthur de Jong <[email protected]>
* [fbea2a5] nslcd/attmap.c: Fix mapping group member attribute to
empty string
This fixes be94912.
2014-05-04 Arthur de Jong <[email protected]>
* [2274b41] nslcd/alias.c, nslcd/attmap.c, nslcd/cfg.c,
nslcd/common.h, nslcd/ether.c, nslcd/group.c, nslcd/host.c,
nslcd/invalidator.c, nslcd/myldap.c, nslcd/netgroup.c,
nslcd/network.c, nslcd/pam.c, nslcd/passwd.c, nslcd/protocol.c,
nslcd/rpc.c, nslcd/service.c, nslcd/shadow.c: Make buffer size
error logging consistent
This adds logging of most cases where a defined buffer is not
large enough to hold provided data on error log level.
2014-05-04 Arthur de Jong <[email protected]>
* [15fc13c] nslcd/myldap.c, nslcd/myldap.h, nslcd/pam.c,
nslcd/usermod.c: Warn when binddn buffer is too small
2014-05-04 Arthur de Jong <[email protected]>
* [f987891] nslcd/common.h: Grow DN buffer size
The buffer size seems to be a problem in environments with long
names or environments with non-ASCII characters.
2014-05-02 ushi <[email protected]>
* [119cebf] nslcd/common.h: Use larger nslcd password buffer
I had some edge cases where 64 bytes were not enough. People
are using password managers with long generated passwords. I
increased the buffer size to 128.
2014-03-12 Arthur de Jong <[email protected]>
* [8f12c15] AUTHORS, ChangeLog, NEWS, configure.ac,
man/chsh.ldap.1.xml, man/getent.ldap.1.xml, man/nslcd.8.xml,
man/nslcd.conf.5.xml, man/pam_ldap.8.xml, man/pynslcd.8.xml,
pynslcd/pynslcd.py: Get files ready for 0.9.3 release
2014-03-12 Arthur de Jong <[email protected]>
* [1ec7739] INSTALL, missing, test-driver: Update files from
recent automake
2014-03-10 Arthur de Jong <[email protected]>
* [44764f0] tests/Makefile.am, tests/test_myldap.sh,
tests/test_nsscmds.sh: Run the correct executables for the tests
This fixes issues with running the tests when using a separate
build directory (fixes ef0eddaa).
2014-03-10 Arthur de Jong <[email protected]>
* [77444ac] tests/test_myldap.sh: Fix nslcd-test.conf permissions
for test
This ensures that configuration file is not world readable when
the tests are run. This avoids test failure for the use of the
rootpwmodpw option.
2014-03-10 Arthur de Jong <[email protected]>
* [96e4171] common/nslcd-prot.h: Interpret transferred integers
as signed again
This fixes an issue with unsigned values ending up in signed
fields and missing sign extension.
See: https://bugs.debian.org/739330
2014-01-27 Nalin Dahyabhai <[email protected]>
* [2d35feb] nss/hosts.c, nss/networks.c: Use right h_errnop for
retrying with larger buffer
The libc nsswitch code expects h_errno to be set to NETDB_INTERNAL
when it needs to try again with a larger buffer.
Signed-off-by: Lukas Slebodnik <[email protected]>
2014-01-27 Lukas Slebodnik <[email protected]>
* [8532f40] nss/hosts.c, nss/networks.c: Fix crash when retrieving
large networks entries
If NSS_STATUS_TRYAGAIN is returned from read_one_hostent or
read_one_netent then fp will be closed and function tio_skipall
will be called with NULL pointer. It could happend in functions:
_nss_ldap_getnetbyname_r _nss_ldap_getnetbyaddr_r
_nss_ldap_gethostbyname2_r _nss_ldap_gethostbyaddr_r
Fixes r548 (aka afd5d9b).
2014-01-30 Davy Defaud <[email protected]>
* [4211961] nslcd/group.c: Support builtin Windows groups
This maps the gid (gidNumber) to an AD SID for builtin
groups when searching a group by gid (RID) between 544 and
552. In that case the SID prefix is not the domain's prefix
(S-1-5-21-dddddd-dddddd-dddddd) but the BUILTIN SID prefix
(1-5-32).
For example, if you add a user to the Administrators builtin
group (S-1-5-32-544), now you should be able to get this group
through nslcd, instead of receiving an error message.
2014-01-25 Arthur de Jong <[email protected]>
* [f6a0675] configure.ac: Add test for krb5 thread safety
This adds a test that checks the return value of
krb5_is_thread_safe() to see if krb5 is thread safe (during build)
and issues a warning if it is not.
nslcd does not directly link to krb5 but the library may be
loaded (by GSSAPI) if Kerberos is used to authenticate nslcd to
the LDAP server.
2014-01-25 Francois Tigeot <[email protected]>
* [043838c] configure.ac: Also detect DragonFly as BSD
This fixes the detection of DragonFly as requiring the freebsd
NSS interface flavour.
2014-01-24 joshuashire <[email protected]>
* [2181cca] nslcd/shadow.c: Update shadow.c to resolve pwdLastSet
issue
We read the date into the buffer to the specified length to get it
to the Unix time (i.e. seconds) from its AD value of nanoseconds,
then convert it to days for shadow. If we use date rather than
buffer we end up trying to convert the original nanosecond value.
2014-01-05 Arthur de Jong <[email protected]>
* [c6c317e] : Implement deref control handling
This uses the LDAP_CONTROL_X_DEREF control as described in
draft-masarati-ldap-deref-00 to request the LDAP server to
dereference group member attribute values to uid attribute values.
This should reduce the number of searches that are required for
expanding group members that use the member attribute.
This mechanism could also be used to extract information on
nested groups but the gains are less clear there.
Not all LDAP servers support this control. In OpenLDAP, load the
(currently undocumented) deref overlay and enable it for the
database to take advantage of this improvement.
There is a functional difference when using this control. Any
returned deferred uid value returned by the LDAP server is accepted
as a member. No checks are performed to see if the user matches
the search base and search filters set for passwd entries.
2014-01-05 Arthur de Jong <[email protected]>
* [309b4bb] README: Update documentation
This documents the way the deref controls are used.
2014-01-05 Arthur de Jong <[email protected]>
* [cecc024] nslcd/group.c: Use myldap_get_deref_values() to get
member uids
This uses information from the deref control (if available)
to get the username for each of the members of the group. Any
missing deref member attribute values will be seen as nested
groups and will be traversed if nested group support is enabled.
2014-01-05 Arthur de Jong <[email protected]>
* [c973834] configure.ac, nslcd/myldap.c, nslcd/myldap.h: Provide
a myldap_get_deref_values() function
This function looks for deref response controls
(LDAP_CONTROL_X_DEREF) in the entry and returns the information
from the dereferenced attribute in two lists: dereferenced values
and attribute values that could not be dereferenced.
2014-01-05 Arthur de Jong <[email protected]>
* [3992e15] nslcd/group.c: Skip member attributes in bymember search
This changes the group by member searches to not request the
member attributes. This will speed up result parsing by a fraction
because less data is transferred but will also cause the deref
control not to be added to these searches.
2013-12-28 Arthur de Jong <[email protected]>
* [15ee2fc] compat/Makefile.am, compat/derefctrl.c,
compat/ldap_compat.h, configure.ac: Provide replacement
ldap_create_deref_control()
This adds a test for a bug in OpenLDAP that allocated a
LDAP_CONTROL_PAGEDRESULTS control instead of a LDAP_CONTROL_X_DEREF
control.
2014-01-05 Arthur de Jong <[email protected]>
* [547e479] configure.ac, nslcd/myldap.c: Request attribute deref
via search control
This uses the LDAP_CONTROL_X_DEREF control as descibed in
draft-masarati-ldap-deref-00 to request the LDAP server to
dereference member attribute values to uid attribute values in
order to avoid doing extra searches.
This control is currently only added for group search by looking
for the member attribute in the search.
2014-01-04 Arthur de Jong <[email protected]>
* [c22eb08] nslcd/myldap.c: Rename entry property to indicate
storage type
This changes entrye->rangedattributevalues to entry->buffers
because the propery is not only used for ranged attribute values
but for anything that can be freed with free().
2014-01-03 Arthur de Jong <[email protected]>
* [f009c96] nslcd/myldap.c: Ignore missing page controls
Since we could get arbitrray controls and are only interested
in page controls we ignore failures to find page controls.
2014-01-03 Arthur de Jong <[email protected]>
* [4f6dfdd] nslcd/myldap.c: Use do_try_search() also for paged
searches
This also changes do_try_search() to support building continued
paged controls and lays the groundwork for adding more search
controls.
2014-01-05 Arthur de Jong <[email protected]>
* [be94912] nslcd/attmap.c, nslcd/group.c, pynslcd/group.py:
Support blanking the member attribute
This allows remapping the member attribute to an empty string
which removes support for that attribute. This can reduce the
number of search operations if the attribute is not used.
2014-01-05 Arthur de Jong <[email protected]>
* [0d3fa5d] nslcd/group.c: Fix typo
2014-01-05 Arthur de Jong <[email protected]>
* [8e74848] nslcd/group.c, nss/netgroup.c, tests/test_set.c:
Fix memory leaks related to set_pop()
Some pieces of code did not properly free() the value returned
by set_pop().
The leak in group code was related to the introduction of nested
group functionality in 41ba574 (merged in 3daa68d) so should
only be present in releases 0.9.0 forward.
The leak in the netgroup code only ended up in the Solaris
version of the NSS module and was introduced in 4ea9ad1 (merged in
5c8779d). This leak is present in all releases from 0.8.0 forward.
2014-01-04 Arthur de Jong <[email protected]>
* [3288942] tests/test_myldap.c: Fix compiler warnings in the
myldap test
2014-01-02 Arthur de Jong <[email protected]>
* [2b8fbc2] : Only exit nslcd when daemon is ready
This removes a race condition between the exit of the initial
nslcd process (as started by the init script) and nslcd services
being ready.
2014-01-02 Arthur de Jong <[email protected]>
* [3afedc4] compat/Makefile.am, compat/daemon.c, compat/daemon.h,
configure.ac: Remove daemon() replacement function
2014-01-02 Arthur de Jong <[email protected]>
* [907d49d] configure.ac, nslcd/daemonize.c: Close daemon pipe
file descriptor on fork or exec
This tries to avoid child processes ending up with a copy of
the pipe file descriptor that is used to signal readiness of
the daemon.
2014-01-02 Arthur de Jong <[email protected]>
* [42a1a3d] nslcd/Makefile.am, nslcd/daemonize.c, nslcd/daemonize.h,
nslcd/nslcd.c: Properly daemonise nslcd and only exit when ready
This introduces a new daemonize module that provides functions for
closing all file descriptors, redirecting stdin/stdout/stderr to
/dev/null and a function for backgrounding an application while
only exiting the original process after the daemon process has
indicated readiness.
This is used to exit the original process only after the listening
socket has been set up and the worker threads have been started.
2013-12-28 Arthur de Jong <[email protected]>
* [e3f0453] configure.ac: Re-organise ldap function tests
2013-12-21 Arthur de Jong <[email protected]>
* [3ce5ef9] : Make dn2uid cache tuneable
This introduces a new cache configuration option that allows
setting positive and negative cache lifetimes for the dn2uid cache.
2013-12-21 Arthur de Jong <[email protected]>
* [19f3cc3] tests/test_cfg.c: Add a test for new configuration option
2013-12-21 Arthur de Jong <[email protected]>
* [09969cf] man/nslcd.conf.5.xml: Document cache option in
manual page
2013-12-21 Arthur de Jong <[email protected]>
* [a0c90d2] nslcd/passwd.c: Use dn2uid cache options
The configuration values are used in the cache to determine
positive and negative hit TTLs. This also allows completely
disabling the cache.
2013-12-21 Arthur de Jong <[email protected]>
* [99ad1b4] nslcd/cfg.c, nslcd/cfg.h: Implement a cache configuration
option
This adds the cache nslcd.conf configuration option to configure
the dn2uid cache in nslcd with a positive and negative cache
lifetime.
2013-12-19 Arthur de Jong <[email protected]>
* [82bac61] nslcd/passwd.c: Have positive and negative cache timeouts
The positive value determines the time a found entry is valid,
the negative timeout determines the lifetime of not found entries.
2013-12-19 Arthur de Jong <[email protected]>
* [b9ec6df] nslcd/cfg.c: Support printing children search scope
This fixes 2caeef4.
2013-12-18 Arthur de Jong <[email protected]>
* [9f02853] nslcd/alias.c, nslcd/common.c, nslcd/common.h,
nslcd/ether.c, nslcd/group.c, nslcd/host.c, nslcd/myldap.c,
nslcd/netgroup.c, nslcd/network.c, nslcd/pam.c, nslcd/passwd.c,
nslcd/protocol.c, nslcd/rpc.c, nslcd/service.c, nslcd/shadow.c,
nslcd/usermod.c: Centralise buffer sizes
Common buffer sizes are now stored centrally so it can be easily
and consistently updated if required. Some buffers remain with
locally defined sizes that do not match a global buffer size.
2013-11-25 Arthur de Jong <[email protected]>
* [23a41ce] compat/pam_get_authtok.c, compat/pam_prompt.c,
configure.ac, pam/pam.c: Add a test for pam_get_item() argument
type
This checks whether pam_get_item() takes a const void ** or void
** item value argument and defines a PAM_ITEM_CONST macro that
is const when it should. This avoids some compiler warnings.
2013-10-30 Arthur de Jong <[email protected]>
* [81bfb8b] ChangeLog, NEWS, configure.ac, man/chsh.ldap.1.xml,
man/getent.ldap.1.xml, man/nslcd.8.xml, man/nslcd.conf.5.xml,
man/pam_ldap.8.xml, man/pynslcd.8.xml: Get files ready for
0.9.2 release
2013-10-29 Arthur de Jong <[email protected]>
* [ef0edda] tests/test_myldap.sh, tests/test_nsscmds.sh,
tests/test_pamcmds.expect: Portability fixes to environment tests
This mostly tries to reduce the influences of the test environment
(local users and groups) on the tests. This uses another username
(vsefcovic) in the PAM tests instead of the user arthur to avoid
clashes with existing users.
The PAM tests are skipped if passwd claims that it cannot modify
LDAP passwords (for FreeBSD).
2013-10-29 Arthur de Jong <[email protected]>
* [f8af48f] compat/ldap_parse_passwordpolicy_control.c,
nslcd/common.c, nslcd/config.c, nslcd/group.c, nslcd/nslcd.c,
nslcd/pam.c, nslcd/protocol.c, nslcd/rpc.c, nslcd/service.c,
nss/bsdnss.c, nss/ethers.c, nss/group.c, nss/netgroup.c,
nss/networks.c, nss/passwd.c, nss/protocols.c, nss/rpc.c,
nss/services.c, pam/pam.c: Fix a number of compiler warnings
This includes a number of small fixes for issues that were
formerly masked by the incorrect AC_LANG_PROGRAM check.
2013-10-29 Arthur de Jong <[email protected]>
* [88801f9] configure.ac: Add -Werror=implicit if compiler
supports it
2013-10-29 Arthur de Jong <[email protected]>
* [933bf8e] configure.ac: Fix usage of AC_LANG_PROGRAM
Apparently the macro got changed a long time ago to provide a
main() definition. This bug caused the extra warning flags to
not be added.
2013-10-29 Arthur de Jong <[email protected]>
* [6028226] compat/Makefile.am, compat/shell.h, configure.ac,
nslcd/usermod.c: Compatibility definitions for
{set,get,end}usershell()
This provides compatibility definitions for systems that don't
have these functions (some Solaris flavours).
2013-10-28 Arthur de Jong <[email protected]>
* [ed4cf47] nslcd/nslcd.c: Start invalidator after locking pidfile
This causes the pidfile to be written as the first thing after
daemonising nslcd to minimise the race between service script
completion and pidfile being locked.
2013-10-27 Arthur de Jong <[email protected]>
* [503644b] HACKING, README: Update documentation
2013-10-27 Arthur de Jong <[email protected]>
* [6be316e] autogen.sh, configure.ac: Specify m4 directory in
configure script
2013-10-25 Arthur de Jong <[email protected]>
* [1d8db24] nslcd/myldap.c, pynslcd/search.py: Also run invalidators
on initial connect
This also invalidates the caches configured with
reconnect_invalidate on the first successful search. This should
handle the case more gracefully where caches were filled with
negative hits before nslcd was running.
2013-10-25 Arthur de Jong <[email protected]>
* [ee8737f] tests/Makefile.am: Distribute setup_slapd.sh and
associated files
2013-10-22 Arthur de Jong <[email protected]>
* [e28e937] tests/test_myldap.sh, tests/testenv.sh: Improve
portability of ldap test
This supports old ldapsearch commands that don't support the -x
and -H options and ldapsearch commands that don't exit with a
failure code if nothing is found.
This also switches the test_myldap test to use the testenv check
for the LDAP server.
2013-10-20 Arthur de Jong <[email protected]>
* [8cc354a] tests/test_pamcmds.expect: Handle other responses
in test_pamcmds
This extends test_pamcmds to handle other pam/su/passwd errors
and responses (as seen on CentOS 5). Also switch to stronger
password when changing the test user's password to avoid problems
with password strength checks.
2013-10-20 Arthur de Jong <[email protected]>
* [0a95557] tests/Makefile.am, tests/in_testenv.sh,
tests/test_nsscmds.sh, tests/test_pamcmds.expect,
tests/test_pamcmds.sh, tests/testenv.sh: Make script to check
test environment
This changes the in_testenv.sh script into testenv.sh which has
more checks and a few functions to configure the test environment.
2013-10-20 Arthur de Jong <[email protected]>
* [1899e9a] tests/test.ldif: Remove unnecessary attributes from
test.ldif
2013-10-20 Arthur de Jong <[email protected]>
* [cebc2a1] tests/README: Update tests README
This refreshes the documentation of the tests, especially the
test environment.
2013-10-20 Arthur de Jong <[email protected]>
* [7cbb439] tests/config.ldif, tests/setup_slapd.sh: Provide a
script for setting up slapd
The setup_slapd.sh script can be used to set up and start a
slapd instance in a single (temporary) directory. The slapd
instance is configured and loaded with test data for use in the
test environment.
2013-10-19 Arthur de Jong <[email protected]>
* [aeccbfe] tests/test_nsscmds.sh: Fix sortgroup function
This fixes an issue with the sortgroup function which failed to
handle a group line with only two colons correctly. Such group
entries have been seen in the wild on FreeBSD.
Also, comment lines in group files are now ignored (also seen
on FreeBSD).
2013-10-14 Arthur de Jong <[email protected]>
* [0697347] common/dict.c: Use djb2 hash in dict module
This slightly modifies the string hashing function to use the
djb2 hash. This hash is supposed to be reasonably fast and have
reasonably few collisions.
2013-10-07 Arthur de Jong <[email protected]>
* [61e96bf] nslcd/cfg.h: Increase NSS_LDAP_CONFIG_MAX_BASES to 31
This allows more search bases which may be useful in some
environments.
2013-09-15 Arthur de Jong <[email protected]>
* [2f088ec] common/tio.c: Also support poll() returning EAGAIN
2013-09-13 Arthur de Jong <[email protected]>
* [173d768] configure.ac: Add more python module checks to configure
2013-09-13 Arthur de Jong <[email protected]>
* [b7ca95a] configure.ac: Make missing Python modules a waring
This avoids having to have all modules installed in the build
environment. A Python version is still required during build.
2013-09-13 Arthur de Jong <[email protected]>
* [f36bb81] pynslcd/cache.py, pynslcd/group.py: Remove unneeded
imports
2013-09-13 Arthur de Jong <[email protected]>
* [8ae8b9a] Makefile.am, configure.ac, tests/Makefile.am: Cleanups
and fixes related to automake upgrade
This removes a few legacy workarounds and fixes for older versions
of automake. This also removes adding specific DEBUG flags for
tests since subdir objects are handled differently now.
2013-09-13 Arthur de Jong <[email protected]>
* [2bd2bc4] pam/pam.c: Initialise msg to avoid potential NULL
pointer dereference
The NULL pointer dereference in the PAM module should not occur due
to the relationship with the rc value that is handled alongside
it. This change mostly silences the compiler and protects from
future changes.
2013-09-13 Arthur de Jong <[email protected]>
* [dccc9cf] configure.ac: Add configure test for
{set,get,end}usershell() availability
2013-09-08 Arthur de Jong <[email protected]>
* [4fc4197] autogen.sh: Upgrade to automake 1.14
2013-09-08 Arthur de Jong <[email protected]>
* [bc6a18e] nslcd/nslcd.c: Use larger nslcd send buffers
By using bigger write buffers in nslcd we reduce the number of
writes in nslcd and consequently the number of reads in the NSS
and PAM modules for bigger responses.
This reduces the number of system calls that are made during
a request and brings a small performance improvement that is
mainly measurable in the NSS module. A measurement showed 30-80%
reduction in the number of system calls in the NSS module and
around 10% reduction in CPU usage (CPU time, only small reduction
in wallclock time).
Thanks John Sullivan for pointing this out.
2013-09-08 Arthur de Jong <[email protected]>
* [58d50bf] configure.ac, man/Makefile.am: Add configure check to
see whether to install manual pages
This also reworks the manual page generation check in the configure
script and avoids build errors if no tool for generating manual
pages is present when working on a Git checkout.
2013-09-04 Arthur de Jong <[email protected]>
* [ce95b41] ldapns.ldif: Reformat LDIF file to follow OpenLDAP format
This fixes a wrapping problem. Thanks to Paul Boven for pointing
this out.
2013-09-02 Arthur de Jong <[email protected]>
* [8b169f1] tests/test_common.c: Fix permissions of test
configuration
This sets the permissions on the nslcd-test.conf file while
running the tests to ensure that the permission checks for the
bindpwn and rootpwmodpw options do not fail the test.
2013-09-02 Arthur de Jong <[email protected]>
* [560e5de] .gitignore, tests/Makefile.am, tests/test_tio_timeout.c:
Add a test for tio timeout calculations
This test checks whether the proposed remaining time to sleep
is reasonable.
2013-09-02 Arthur de Jong <[email protected]>
* [db5382e] .gitignore, tests/Makefile.am, tests/test_clock.c:
Add a test for clock_gettime() supported clocks
This probes the system for available clocks to see if they can
be reliably used to get a monotonic-like timer (the test doesn't
verify the monotonic part, just usability).
2013-09-01 Arthur de Jong <[email protected]>
* [7895739] AUTHORS, common/tio.c, configure.ac: Use clock_gettime()
instead of gettimeofday()
This avoids problems with system clock changes (though there
are some safeguards in place to avoid waiting too long on clock
changes).
Thanks to John Sullivan for pointing this out.
We can't easily use CLOCK_MONOTONIC_RAW or CLOCK_MONOTONIC_COARSE
even on platforms that define the clock because we can get
runtime errors. CLOCK_MONOTONIC seems to work on all tested
platforms that provide it.
2013-09-02 Arthur de Jong <[email protected]>
* [a683aa8] tests/test_manpages.sh: Small protability fix
2013-09-01 Arthur de Jong <[email protected]>
* [c8800eb] tests/test_manpages.sh: Improve robustness of
test_manpages
2013-08-31 Arthur de Jong <[email protected]>