slap_mask_t global_requires = 0;
slap_ssf_set_t global_ssf_set;
char *replogfile;
-int global_lastmod = ON;
int global_idletimeout = 0;
char *global_host = NULL;
char *global_realm = NULL;
int rc;
struct berval vals[2];
+ static int lastmod = 1;
static BackendInfo *bi = NULL;
static BackendDB *be = NULL;
fname, lineno, 0 );
#endif
} else {
- be->be_glueflags |= SLAP_GLUE_SUBORDINATE;
+ be->be_flags |= SLAP_BFLAG_GLUE_SUBORDINATE;
num_subordinates++;
}
return( 1 );
}
if ( strcasecmp( cargv[1], "on" ) == 0 ) {
- if ( be )
- be->be_lastmod = ON;
- else
- global_lastmod = ON;
+ if ( be ) {
+ be->be_flags &= ~SLAP_BFLAG_NOLASTMOD;
+ } else {
+ lastmod = 1;
+ }
} else {
- if ( be )
- be->be_lastmod = OFF;
- else
- global_lastmod = OFF;
+ if ( be ) {
+ be->be_flags |= SLAP_BFLAG_NOLASTMOD;
+ } else {
+ lastmod = 0;
+ }
}
/* set idle timeout value */
if( p > buf && p[-1] == '\r' ) --p;
*p = '\0';
}
- if ( ! isspace( (unsigned char) buf[0] ) ) {
- return( line );
- }
+
+ /* trim off trailing \ and append the next line */
+ if ( line[ 0 ] != '\0'
+ && (p = line + strlen( line ) - 1)[ 0 ] == '\\'
+ && p[ -1 ] != '\\' ) {
+ p[ 0 ] = '\0';
+ lcur--;
- /* change leading whitespace to a space */
- buf[0] = ' ';
+ } else {
+ if ( ! isspace( (unsigned char) buf[0] ) ) {
+ return( line );
+ }
+
+ /* change leading whitespace to a space */
+ buf[0] = ' ';
+ }
CATLINE( buf );
(*lineno)++;