Commit Diff


commit - f7fe170a5ef7dda63b09f82d091542d66eff0689
commit + 25ca2b3cc5b5d92f43591bdb2f0076101fa2b79d
blob - 2ff503612cd31575116941c9267ffc7f742408f1
blob + e72152232c2327202598a20c87e05086df25b1e4
--- src/ngircd/conf.c
+++ src/ngircd/conf.c
@@ -14,7 +14,7 @@
 
 #include "portab.h"
 
-static char UNUSED id[] = "$Id: conf.c,v 1.43 2002/12/13 17:32:33 alex Exp $";
+static char UNUSED id[] = "$Id: conf.c,v 1.44 2002/12/14 13:36:19 alex Exp $";
 
 #include "imp.h"
 #include <assert.h>
@@ -119,8 +119,6 @@ Conf_Test( VOID )
 	else printf( "  MaxConnections = -1\n" );
 	if( Conf_MaxJoins > 0 ) printf( "  MaxJoins = %d\n", Conf_MaxJoins );
 	else printf( "  MaxJoins = -1\n" );
-	if( Conf_MaxPChannels > 0 ) printf( "  MaxPChannels = %d\n", Conf_MaxPChannels );
-	else printf( "  MaxPChannels = -1\n" );
 	puts( "" );
 
 	for( i = 0; i < Conf_Oper_Count; i++ )
@@ -197,7 +195,6 @@ Set_Defaults( VOID )
 	
 	Conf_MaxConnections = -1;
 	Conf_MaxJoins = 10;
-	Conf_MaxPChannels = -1;
 } /* Set_Defaults */
 
 
@@ -494,16 +491,6 @@ Handle_GLOBAL( INT Line, CHAR *Var, CHAR *Arg )
 		Conf_MaxJoins = atoi( Arg );
 		return;
 	}
-	if( strcasecmp( Var, "MaxPChannels" ) == 0 )
-	{
-		/* Maximum number of persistent channels in the network. Values <= 0 are equal to "no limit". */
-#ifdef HAVE_ISDIGIT
-		if( ! isdigit( *Arg )) Config_Error( LOG_WARNING, "%s, line %d: Value of \"MaxPChannels\" is not a number!", NGIRCd_ConfFile, Line );
-		else
-#endif
-		Conf_MaxPChannels = atoi( Arg );
-		return;
-	}
 
 	Config_Error( LOG_ERR, "%s, line %d (section \"Global\"): Unknown variable \"%s\"!", NGIRCd_ConfFile, Line, Var );
 } /* Handle_GLOBAL */
blob - 3c32faad48b7a8543c3b5637732571571c80c04c
blob + c4cf3383c8dd92be03045428c2e95be6be3729ba
--- src/ngircd/conf.h
+++ src/ngircd/conf.h
@@ -8,7 +8,7 @@
  * (at your option) any later version.
  * Please read the file COPYING, README and AUTHORS for more information.
  *
- * $Id: conf.h,v 1.23 2002/12/13 17:32:33 alex Exp $
+ * $Id: conf.h,v 1.24 2002/12/14 13:36:19 alex Exp $
  *
  * Configuration management (header)
  */
@@ -102,10 +102,7 @@ GLOBAL LONG Conf_MaxConnections;
 /* Maximum number of channels a user can join */
 GLOBAL INT Conf_MaxJoins;
 
-/* Maximum number of persistent channels in the network */
-GLOBAL INT Conf_MaxPChannels;
 
-
 GLOBAL VOID Conf_Init PARAMS((VOID ));
 GLOBAL INT Conf_Test PARAMS((VOID ));
 
blob - 6984409fd9c7e9329e25d7ede8b768f531d26055
blob + b17fc547d603acdcef61cadc8079cd1e8c90df57
--- src/ngircd/irc-mode.c
+++ src/ngircd/irc-mode.c
@@ -14,7 +14,7 @@
 
 #include "portab.h"
 
-static char UNUSED id[] = "$Id: irc-mode.c,v 1.18 2002/12/14 13:24:09 alex Exp $";
+static char UNUSED id[] = "$Id: irc-mode.c,v 1.19 2002/12/14 13:36:19 alex Exp $";
 
 #include "imp.h"
 #include <assert.h>
@@ -286,7 +286,7 @@ IRC_MODE( CLIENT *Client, REQUEST *Req )
 							break;
 						case 'P':
 							/* Persistent channel */
-							if( set && ( Conf_MaxPChannels > 0 ) && ( Channel_PCount( ) >= Conf_MaxPChannels ))
+							if( set && ( ! Client_OperByMe( Client )))
 							{
 								/* there are too many persistent channels in the network! */
 								ok = IRC_WriteStrClient( Client, ERR_NOPRIVILEGES_MSG, Client_ID( Client ));