openldap/backport-ITS-9811-Allow-newlines-at-end-of-included-file.patch

36 lines
1007 B
Diff
Raw Normal View History

2022-11-07 12:04:02 +00:00
From 0dae0704c01adb8b336d35647e75b45c0c21cc10 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Kuzn=C3=ADk?= <ondra@mistotebe.net>
Date: Fri, 18 Mar 2022 14:51:45 +0000
Subject: [PATCH] ITS#9811 Allow newlines at end of included file
---
libraries/libldap/ldif.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/libraries/libldap/ldif.c b/libraries/libldap/ldif.c
index 7ca5e32cf..900a97960 100644
--- a/libraries/libldap/ldif.c
+++ b/libraries/libldap/ldif.c
@@ -796,6 +796,7 @@ ldif_read_record(
* back to a previous file. (return from an include)
*/
while ( feof( lfp->fp )) {
+pop:
if ( lfp->prev ) {
LDIFFP *tmp = lfp->prev;
fclose( lfp->fp );
@@ -808,6 +809,10 @@ ldif_read_record(
}
if ( !stop ) {
if ( fgets( line, sizeof( line ), lfp->fp ) == NULL ) {
+ if ( !found_entry && !ferror( lfp->fp ) ) {
+ /* ITS#9811 Reached the end looking for an entry, try again */
+ goto pop;
+ }
stop = 1;
len = 0;
} else {
--
2.33.0