[1178] in Kerberos-V5-bugs
krb5b4pl3: lib/kdb/kdb_dbm.c: don't cast dbm_close to (void)
daemon@ATHENA.MIT.EDU (Jonathan I. Kamens)
Tue Mar 14 16:52:55 1995
From: "Jonathan I. Kamens" <jik@cam.ov.com>
Date: Tue, 14 Mar 1995 16:55:55 -0500
To: krb5-bugs@MIT.EDU
dbm_close() shouldn't be cast to (void), because it's already declared
as returning void. This is significant on Linux, where dbm_close is
actually a macro which is expanded into nothing. In that case, this:
(void) dbm_close(foo);
would expand to this:
(void) ;
which is a syntax error.
Here's a patch:
--- lib/kdb/kdb_dbm.c 1995/02/27 03:05:16 1.1
+++ lib/kdb/kdb_dbm.c 1995/02/27 03:05:28
@@ -1165,7 +1165,7 @@
else found = 1;
if (current_db_ptr == 0)
- (void) dbm_close(db);
+ dbm_close(db);
(void) krb5_dbm_db_unlock(); /* unlock read lock */
if (krb5_dbm_db_end_read(transaction) == 0)
break;
@@ -1182,7 +1182,7 @@
cleanup:
if (current_db_ptr == 0)
- (void) dbm_close(db);
+ dbm_close(db);
(void) krb5_dbm_db_unlock(); /* unlock read lock */
return retval;
}
@@ -1266,7 +1266,7 @@
}
if (current_db_ptr == 0)
- (void) dbm_close(db);
+ dbm_close(db);
(void) krb5_dbm_db_unlock(); /* unlock database */
*nentries = i;
return (retval);
@@ -1337,7 +1337,7 @@
cleanup:
if (current_db_ptr == 0)
- (void) dbm_close(db);
+ dbm_close(db);
(void) krb5_dbm_db_unlock(); /* unlock write lock */
*nentries = found;
return retval;
@@ -1380,7 +1380,7 @@
break;
}
if (current_db_ptr == 0)
- (void) dbm_close(db);
+ dbm_close(db);
(void) krb5_dbm_db_unlock();
return retval;
}