1 2005-06-10 Ollivier Robert <roberto@keltia.freenix.fr> 2 3 * 2.8.6-p3 4 5 * db.c: Force l'initialisation de plusieurs variables pointant sur de la 6 mémoire allouée par malloc(3). Ca évite un segfault lors du free(3) sur 7 Solaris et Gentoo (Denis Ducamp <Denis.Ducamp@groar.org>). 8 9 2004-10-31 Ollivier Robert <roberto@keltia.freenix.fr> 10 11 * 2.8.6-p2 12 13 * calife.c,db.c,conf.h: Ajout de la syntaxe @group: dans 14 calife.auth pour authentifier via l'appartenance au dit groupe. 15 16 * calife.auth.5.in,README: mise à jour. 17 18 2004-03-01 Ollivier Robert <roberto@keltia.freenix.fr> 19 20 * 2.8.6-p1. 21 22 * acconfig.h,config.h.in,configure.in: /etc/calife.out est 23 optionnel et dépend de --enable-global-rc. 24 25 * calife.c(main): changement de la manière avec laquelle calife 26 détermine qui l'a lancé quand getlogin(3) plante. /etc/calife.out 27 est maintenant optionnel. 28 29 * configure.in: l'édition de liens est maintenant dynamique par 30 défaut sous Linux pour éviter un segfault (interaction avec nss je 31 suppose). 32 33 2004-02-27 Ollivier Robert <roberto@keltia.freenix.fr> 34 35 * 2.8.6. 36 37 ** SECURITY RELEASE ** 38 39 * db.c(verify_password): vérification de la valeur de retour de 40 getpass(3) et utilisation de strncpy(3) pour recopier le mot de 41 passe saisi, sur Linux le buffer géré par la glibc est corruptible 42 et génère un segfault si le mot de passe précédemment entré est 43 trop long. 44 45 cf. <URL:http://www.securityfocus.com/archive/1/355510> 46 47 2004-01-23 Ollivier Robert <roberto@keltia.freenix.fr> 48 49 * 2.8.5-p3. 50 51 * calife.c: utilisation du code de su.c pour identifier le login 52 de l'utilisateur pour corriger les problèmes de getlogin sous 53 Linux. 54 55 2004-01-08 Ollivier Robert <roberto@keltia.freenix.fr> 56 57 * 2.8.5-p2. 58 59 * README: mise à jour des adresses de courrier électronique et des 60 versions de Mac OS X (remarque d'Olivier Tharan). 61 62 2003-11-04 Ollivier Robert <roberto@keltia.freenix.fr> 63 64 * 2.8.5-p1 65 66 * calife.c: synchro de la liste des signaux à masquer dans les 67 deux cas POSIX et !POSIX. Ajout de SIGTTOU à cette liste pour 68 éviter une « race condition » lors de l'exécution de 69 calife.out. Inspiré par la révision 1.70 de su.c/FreeBSD. 70 71 2003-10-04 Ollivier Robert <roberto@keltia.freenix.fr> 72 73 * 2.8.5. 74 75 * configure.in: reconnaissance de MacOS X/Darwin. 76 77 * README: mise à jour. 78 79 2003-07-28 Ollivier Robert <roberto@caerdonn.eurocontrol.fr> 80 81 * 2.8.4-p8. 82 83 * calife.c,db.c,util.c: renommage de la variable "log" en 84 "logfile" pour éviter des warnings de gcc 3.3 pour lequel "log" 85 est maintenant une fonction "nuiltin". (Thomas Quinot via un patch 86 incomplet venant de Debian #194874). 87 88 2003-05-01 Ollivier Robert <roberto@keltia.freenix.fr> 89 90 * 2.8.4-p7. 91 92 * config.guess,config.sub: versions mises à jour. 93 94 2003-01-12 Ollivier Robert <roberto@keltia.freenix.fr> 95 96 * 2.8.4-p6. 97 98 * config.sub: intégration support FreeBSD/IA-64 dans configure. 99 100 2002-10-14 Ollivier Robert <roberto@caerdonn.eurocontrol.fr> 101 102 * 2.8.4-p5. 103 104 * util.c(die): passage du mauvais paramètre à va_end(). 105 (Laurent Wacrenier). 106 107 2002-08-08 Ollivier Robert <roberto@keltia.freenix.fr> 108 109 * 2.8.4-p4. 110 111 * calife.c(main): modification de la liste de caractères autorisés 112 dans un nom de login (Erwan David). 113 114 * conf.h: passage de MAXLOGNAME à 16 (Erwan David). 115 116 2002-08-02 Ollivier Robert <roberto@keltia.freenix.fr> 117 118 * db.c: Fix pour les éditeurs ne mettant pas un \n à la dernière 119 ligne (Erwan David) 120 121 2002-01-21 Ollivier Robert <roberto@caerdonn.eurocontrol.fr> 122 123 * config.h.in,configure.in: sous Debian/IA64, crypt(3) n'est 124 défini que si _XOPEN_SOURCE l'est (Thomas Quinot). 125 126 2001-12-10 Ollivier Robert <roberto@caerdonn.eurocontrol.fr> 127 128 * calife.c,db.c,conf.h: modification du passage root/non-root en 129 utilisant deux nouvelles macros pour simplifier le code. 130 131 2001-10-09 Ollivier Robert <roberto@keltia.freenix.fr> 132 133 * 2.8.4-p3. 134 135 * calife.c: Fix pour la compilation sur Hurd. Simplification du 136 traitement du tty (Thomas Quinot). Fix pour le traitement de utmp 137 sur SunOS et Linux. 138 139 * configure.in,configure,acconfig.h,conf.h: ajout de la recherche 140 de libgen.h et HAVE_ETC_SHADOW. Regénération de configure. 141 142 * Fix pour Linux/SunOS dans conf.h Trouvé par T. Quinot. 143 144 2000-11-14 Ollivier Robert <roberto@keltia.freenix.fr> 145 146 * 2.8.4-p2. 147 148 * calife.c: sort si stdin n'est pas un tty (Laurent Wacrenier - lwa). 149 150 * README: mise à jour des adresses mail et ajout de lwa. 151 152 1999-08-20 Ollivier Robert <roberto@keltia.freenix.fr> 153 154 * configure.in: fixe l'erreur de syntaxe pour test(1). 155 156 1999-08-19 Ollivier Robert <roberto@keltia.freenix.fr> 157 158 * configure.in: corrige la manière de reconnaitre l'édition de 159 liens dynamique de l'exécutable. Solaris & HP-UX ne supporte pas 160 la compilation statique (Denis Ducamp). 161 162 163 1999-08-17 Ollivier Robert <roberto@keltia.freenix.fr> 164 165 * 2.8.4-RELEASE 166 167 * configure.in: Pas de compilation statique sur Solaris. Les 168 drapeaux ne sont plus forcés sur HP-UX, l'administrateur décide de 169 quels drapeaux a besoin le compilateur (Francois Berjon). 170 171 * db.c: donne à crypt(3) le mot de passe complet plutôt que juste 172 la "salt". Ca ne gène pas les crypt(3) basés sur le DES et aide 173 beaucoup pour les autres formes comme celles d'OpenBSD et de Linux 174 (Denis Ducamp). 175 176 * Makefile.bsd: n'a pas sa place puisque faire passer configure 177 n'est pas une option. 178 179 1999-06-01 Ollivier Robert <roberto@keltia.freenix.fr> 180 181 * 2.8.3-RELEASE 182 183 * README: mise à jour. 184 185 * configure.in, configure: reconnaissance enfin correcte des 186 shadow passwords des diverses versions de Linux. 187 188 1999-05-27 Ollivier Robert <roberto@keltia.freenix.fr> 189 190 * 2.8.2-RELEASE 191 192 * calife.c: changement du copyright pour 1999. Correction bug 193 d'allocation mémoire trouvé par Thomas Quinot 194 <thomas@cuivre.fr.eu.org>. 195 196 * config.guess,config.sub: mise à jour avec une version 197 récente. Propagation du patch pour reconnaitre les Sparcbook S2 198 (config.guess). 199 200 1999-05-04 Ollivier Robert <roberto@keltia.freenix.fr> 201 202 * configure.in, Makefile.in: tente de trouver le bon groupe qui 203 sera utilisé lors de l'installation en fonction de l'OS. Calife 204 est uniquement setuid et non pas set{uid,gid}. 205 206 1999-05-03 Ollivier Robert <roberto@keltia.freenix.fr> 207 208 * calife.c: Corrige la vérification des droits du script exécuté à 209 la fin d'une session. 210 211 * db.c, conf.h: Support amélioré de Linux et de ses shadow 212 passwords. Par Thomas Quinot <thomas@cuivre.fr.eu.org>. 213 214 Fri Feb 14 19:06:08 1997 Ollivier Robert <roberto@keltia.freenix.fr> 215 216 * 2.8.1-RELEASE 217 218 * configure.in: Ajout d'une nouvelle option (--disable-shadow) 219 pour permettre de ne pas utiliser getspnam(3) même s'il existe 220 sur des systèmes Linux. 221 222 * acconfig.h: ajout d'une entrée pour UNUSED_SHADOW. 223 * db.c: prise en compte de UNUSED_SHADOW. 224 225 Sat Oct 26 15:16:12 1996 Ollivier Robert <roberto@keltia.freenix.fr> 226 227 * 2.8-RELEASE 228 229 * calife.c: Support de "-" comme premier paramètre pour faire 230 relire les fichiers d'init (.login,.profile) 231 * Meilleur contrôle sur le fichier out_rc. 232 * Correction bug si argv[1] == '-'. 233 234 Sun Oct 29 23:01:28 1995 Ollivier Robert <roberto@keltia.freenix.fr> 235 236 * 2.8.beta4 237 238 * configure.in: Ajout d'une nouvelle option (--with-program=NAME) 239 pour changer le nom du binaire à l'installation (le défaut revient 240 à "calife"). 241 242 * Makefile.in: changement de $(PROGRAM) en $(IPROGRAM) la où il 243 faut pour la modif sus-nommée. 244 245 * calife.c(main), db.c(open_databases): déplacement de l'appel à 246 openlog(3) avant le test de l'existence de l'utilisateur afin 247 d'avoir le nom correct dans le log. 248 249 Sat Oct 28 15:00:18 1995 Ollivier Robert <roberto@keltia.freenix.fr> 250 251 * 2.8.beta2 252 253 * configure.in : Ajout de deux nouvelles options pour GCC 254 (--enable-warnings et --enable-pedantic) et changement de syntaxe 255 pour une autre (--disable-password). Recherche de quelques entêtes 256 en plus. 257 258 * calife.c(exec_shell): Correction d'un bug dans l'insertion de 259 '-' pour le nom du shell. 260 261 * db.c(verify_auth_info): correction de la reconnaissance du shell 262 dans calife.auth. 263 264 Sun Oct 22 21:48:19 1995 Ollivier Robert <roberto@keltia.freenix.fr> 265 266 * 2.8.beta 267 268 * calife.c: correction d'un bug stupide de "==" à la place de 269 "=". Trouvé par Nat. 270 271 * db.c: réécriture de la lecture de calife.auth pour la 272 reconnaissance d'un shell possible. On évite dorénavant de 273 modifier un pointeur retourné par malloc(3) -- trouvé grâce à 274 Philippe et au malloc de Poul-Henning Kamp dans FreeBSD 2.2. 275 276 * README: corrections mineures par Nat. Ajout de Philippe comme 277 alpha-testeur. 278 279 Sat Oct 21 11:30:53 1995 Ollivier Robert <roberto@keltia.freenix.fr> 280 281 * alpha5-2.8 282 283 * conf.h: définition de ADMIN_LOG si syslog(3) n'existe pas. 284 285 * db.c: utilisation de getspnam uniquement si HAVE_SHADOW_H et si 286 HAVE_GETSPNAM. Je pensais que HAVE_SHADOW_H => HAVE_GETSPNAM, ce 287 qui n'est pas vrai de certains Linux (ils se reconnaîtront) qui 288 ont un shadow.h pour faire joli. 289 290 * Makefile.in: correction de l'utilisation de calife à la place de 291 $PROGRAM. 292 293 Fri Oct 20 23:31:33 1995 Ollivier Robert <roberto@keltia.freenix.fr> 294 295 * alpha4-2.8 296 297 * configure.in,conf.h,acconfig.h: test de NeXTStep qui à l'entête 298 <sys/wait.h> mais qui utilise "union wait". Potentiellement aussi 299 sur d'autres vieilles architectures. 300 301 * Compilation sur un IRIX. 302 303 Wed Oct 18 01:13:06 1995 Ollivier Robert <roberto@keltia.freenix.fr> 304 305 * alpha3-2.8 306 307 * README: modifications mineures de Nat. 308 309 * Makefile.in: corrections des petites bêtises, changement de nom 310 pour calife dont le binaire continuera à s'appeller "...". 311 312 * accconfig.h: nouveau fichier qui regroupe les variables et 313 commentaires qui ne sont pas gérés par des macros internes GNU. Ca 314 permet de générer config.h.in par autoheader. 315 316 * conf.h: WANT_SYS_WAIT ne sert à rien pour SunOS. 317 318 * configure.in: test de la validité de set/getrlimit en cherchant 319 le symbole qui nous intéresse (HP-UX...). 320 321 * Compilation sans problème sur un AIX 3.2.5 ! 322 * Compilation sans problème sur un Linux avec -lshadow. 323 324 Sun Oct 15 19:46:04 1995 Ollivier Robert <roberto@keltia.freenix.fr> 325 326 * alpha-2.8 327 328 * calife.c,db.c,util.c: changement de quelques symboles à cause de 329 l'utilisation de GNU autoconf. On peut faire relire les fichiers 330 .login/.profile en précisant "-" avant le nom d'utilisateur. 331 332 * conf.h: presque toutes les définitions disparaissent au profit 333 du nouveau fichier config.h.in. 334 335 * configure,configure.in,config.sub,config.guess,Makefile.in: 336 nouveaux fichiers venant de GNU autoconf. Insertion des règles 337 correspondantes dans Makefile.in (à compléter). 338 339 * calife.1, calife.auth.5: sont remplacés par calife.1.in et 340 calife.auth.5.in. 341 342 * ADMIN_DB devient AUTH_CONFIG_FILE et CALIFE_OUT devient 343 CALIFE_OUT_FILE. 344 345 * Makefile.FreeBSD,Makefile.SunOS,Makefile.Solaris,Makefile.linux, 346 Makefile.linux-spwd, Makefile.HPUX: disparaissent. Makefile.bsd 347 reste pour FreeBSD si l'utilisateur le veut. 348 349 * README: mise à jour. 350 351 Sat Oct 14 01:24:03 1995 Ollivier Robert <roberto@keltia.freenix.fr> 352 353 * release 2.7.2 354 355 * calife.c,db.c,util.c: rajout de contrôles supplémentaires, 356 déplacement de code. 357 358 * util.c: rajout de die() par Nat Makarévitch, éditée pour 359 s'adapter à mon style et à stdarg à la place de varargs. 360 361 * conf.h: globalisation de ADMIN_DB, ajout du prototype de die(). 362 363 * global: préparation à la 2.8 qui utilisera GNU configure. 364 365 Sat Sep 30 19:40:19 1995 Ollivier Robert <roberto@keltia.freenix.fr> 366 367 * calife.c: correction d'un bug introduit par les contrôles 368 supplémentaires sur le nom d'utilisateur; ajout d'un '\0'. Remise 369 en place des anciennes valeurs de rlimit avant l'exec final. 370 371 Sun Jul 23 23:55:24 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 372 373 * release 2.7.1 374 375 * db.c: support de la fonction crypt(3) utilisant MD5 sur les 376 versions internationales de FreeBSD 2.x. 377 378 Mon Apr 24 03:17:00 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 379 380 * release 2.7 381 382 * calife.c,db.c: réintroduction des listes de logins vers lesquels 383 un utilisateur de calife a le droit d'utiliser calife. 384 385 * README: mise à jour. 386 387 * calife.1,calife.auth.5: mise à jour pour les listes. 388 389 Sun Mar 12 22:09:36 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 390 391 * release 2.6.6 392 393 * conf.h,util.c: linux a déjà une fonction basename. 394 395 * README: mise à jour par Nathanaël Makarevitch. 396 397 * calife.1.txt,calife.auth.5.txt: versions texte des pages de 398 manuel. 399 400 Sat Jan 28 00:36:51 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 401 402 * Makefile.Solaris: nouveau fichier pour Solaris 2.x (testé avec 403 la 2.4). 404 405 * conf.h: standardisation de ADMIN_DB à /etc/calife.auth. 406 407 * README: mise à jour. 408 409 Wed Jan 11 01:32:48 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 410 411 * release 2.6.5 412 413 * calife.c,db.c,util.c,conf.h: elimination du support YP qui n'est 414 pas utilise et complique le code. Changement pour le script qui 415 ext execute a la sortie du programme, il devient global et 416 modifiable a la coompilation en changeant le symbole CALIFE_OUT. 417 418 * calife.1: mention de /etc/calife.out. 419 420 * README: mise à jour. 421 422 * Makefile.*: nettoyage et ajout du symbole CALIFE_OUT. 423 424 Fri Jan 6 01:52:45 1995 Ollivier Robert <roberto@keltia.frmug.fr.net> 425 426 * release 2.6.4 427 428 * conf.h: modifications pour HPUX et ajout d'une entrée pour 429 FreeBSD (2.x). 430 431 * calife.c,db.c: utilisation de setresuid(2) sur HPUX à la place 432 de seteuid(2) qui n'existe pas. 433 434 * README: mise à jour. 435 436 * Makefile.HPUX: nouveau fichier. 437 438 Wed Sep 28 20:27:57 1994 Ollivier Robert <roberto@keltia.frmug.fr.net> 439 440 * release 2.6.3 441 442 * db.c: incorporation des changements de Laurent Chemla 443 (laurent@brasil.frmug.fr.net) pour les systèmes Linux utilisant 444 des "shadow passwords" comme SVR4 (struct spwd and al.). 445 446 * Makefile.linux,Makefile.linux-spwd: nouveaux Makefile pour Linux 447 avec et sans mots de passe explicites. 448 449 * README: nouveau fichier. 450 451 * Makefile.SunOS: ajout d'un message à propos des pages de manuel. 452 453 Mon Sep 26 00:20:07 1994 Ollivier Robert <roberto@keltia.frmug.fr.net> 454 455 * release 2.6.2 456 457 * conf.h,calife.c: Modification du switch NO_UGLY_QUIRK en 458 NOSETUID_SHELL (logique inverse) et enlèvement de ce switch pour 459 Linux qui n'en a pas besoin. 460 461 * release 2.6.1 462 463 * calife.c: modification pour wait(2). Changement du #ifdef AIX3 464 en !defined(AIX3) && !defined(HAVE_INT_WAIT) pour les système sans 465 union. Changement dans les tests pour .calife.out (le bug était 466 qu'il protestait s'il ne trouvait pas de .calife.out). 467 468 * conf.h: changement pour SunOS 4.*, plus de YP, demande 469 <sys/time.h> si pas de YP d'où le symbole WANT_SYS_TIME. 470 471 * Makefile.SunOS: changement dans les options DEBUG. 472 473 Sun Sep 25 20:49:20 1994 Ollivier Robert <roberto@keltia.frmug.fr.net> 474 475 * release 2.6 476 477 * Makefile.bsd: modification de DESTDIR en BINDIR et ajout d'une 478 règle beforeinstall. 479 480 * calife.c: ajout du support pour un fichier exécuté à la fin de 481 la session appelé .calife.out dans le catalogue de 482 l'utilisateur. Le fichier pourra éventuellement être général. 483 484 * conf.h: ajout du nom du fichier exécuté à la fin : .calife.out. 485 486 * Makefile, Makefile.SunOS, Makefile.bsd: modification pour 487 inclure les pages de manuel pour calife(1) et calife.auth(5). 488 489 * calife.1, calife.auth.5: nouveaux fichiers. 490 491 * conf.h: changement pour SunOS qui n'a pas besoin de 492 NO_UGLY_QUIRK et ajout du paramètre HAVE_INT_WAIT pour les 493 systèmes n'ayant pas ``union wait''. 494 495 * calife.c: ajout des #ifdef pour HAVE_INT_WAIT. 496 497 * version 2.5.2: la 2.5.1 incluait les changements pour SunOS mais 498 pas les manuels. 499 500 * Passage à CVS au lieu de RCS ce qui fait que les numéros de 501 version n'ont plus rien à voir avec la "release" de calife. 502 503 Mon Feb 7 23:00:11 1994 Ollivier Robert (roberto@keltia.frmug.fr.net) 504 505 * conf.h: modifications pour Linux par Rene pour NO_UGLY_QUIRK qui 506 n'est pas necessaire et initgroups(2) qui existe. Les YP ne sont 507 pas mises par defaut pour FreeBSD vu que la 1.1 n'est pas 508 officielle. 509 510 * Makefile: rajout de l'option -lshadow pour Linux. 511 512 * conf.h: 1.7.1.1 513 514 Sun Feb 6 14:19:51 1994 Ollivier Robert (roberto@keltia.frmug.fr.net) 515 516 * calife.c: FreeBSD a la fonction initgroups(2), FreeBSD 1.1 n'a 517 pas besoin du hack violent pour tcsh, correction bug dans lequel 518 wanted_user est ecrase par l'appel a getpwname(calife), Changement 519 de _POSIX_SOURCE en POSIX_SIGNAL. 520 521 * conf.h: FreeBSD 1.1 dispose des YP !! 522 523 * calife.c: 2.4 524 * conf.h: 1.7 525 * db.c: 1.3 526 * util.c: 1.2 527 528 * Ajout de Makefile.bsd a utiliser avec le make BSD. 529 530 Wed Nov 10 14:22:59 1993 Ollivier Robert (roberto@keltia.frmug.fr.net) 531 532 * calife.c,db.c: modification pour les logs ; si syslog(3) est 533 utilisable alors on l'utilise sans ouvrir de fichier log 534 supplementaire. 535 536 Fri Sep 3 16:33:20 1993 Ollivier Robert (roberto@keltia.frmug.fr.net) 537 538 * Separation en trois fichiers sources: calife.c, db.c et util.c 539 pour simplifier calife.c. 540 541 * conf.h: Definition des variables globales utilisee par les 542 fonctions. Ajout de #define MAIN_MODULE dans calife.c et test dans 543 conf.h. 544 545 * calife.c: 2.3 546 * conf.h: 1.6 547 * db.c, util.c: 1.1 548 549 * Makefile: reecriture pour mise a jour des fichiers cibles. 550 Disparition de calife.debug, devient calife mais compile et 551 configure sur place avec les symboles. 552 553 Thu Sep 2 19:45:21 1993 Ollivier Robert (roberto@keltia.frmug.fr.net) 554 555 * calife.c: Refonte interne du code, simplification, changement 556 des noms des fonctions pour etre consistent, renvoie de valeurs au 557 lieu d'utiliser la variable globale 'allowed' qui disparait. 558 (OpenDatabases, VerifyAuthorisations, VerifyPassword): deviennent 559 open_databases, verify_auth_info et verify_password. 560 (exec_shell): creation. 561 562 * conf.h: mise a jour des fonctions et de leur prototype. 563 564 * calife.c: 2.2 565 * conf.h: 1.5 566 567 Sun Aug 15 22:27:22 1993 Ollivier Robert (roberto@keltia.frmug.fr.net) 568 569 * calife.c (main): when we call the shell in order to run the 570 shell (NO_UGLY_QUIRK), then we do an exec(2) instead of just 571 running the shell. 572 573 Wed Jun 23 23:54:27 1993 Ollivier Robert (roberto@keltia) 574 575 * conf.h (linux): ajout des modifs de René pour le portage Linux. 576 577 Mon Jun 21 23:26:44 1993 Ollivier Robert (roberto@keltia) 578 579 * portage linux par René... 580 581 Fri Jun 11 23:13:25 1993 Ollivier Robert (roberto@keltia) 582 583 * Makefile (386BSD): change CFLAGS in order to include -O2 and 584 -m486 on my machine. 585 586 * calife.c (main), if _POSIX_SOURCE is defined then use Posix 587 1003.1 signal handling functions i.e. setprocmask(2), sigaddset(2) 588 to handle ignored signals. 589 590 * calife.c (main, OpenDatabases, VerifyPassword): syslog(3) 591 message format changed in order to stay within 80 cols limit. 592 593 * calife.c (main): change test of user_to_be in order to verify if 594 he/she exists before even use fork(2). 595 596 $Id: //depot/security/calife/main/ChangeLog#44 $ 597