+GLOBAL INT
+Channel_CountForUser( CLIENT *Client )
+{
+ /* Count number of channels a user is member of. */
+
+ CL2CHAN *cl2chan;
+ INT count;
+
+ assert( Client != NULL );
+
+ count = 0;
+ cl2chan = My_Cl2Chan;
+ while( cl2chan )
+ {
+ if( cl2chan->client == Client ) count++;
+ cl2chan = cl2chan->next;
+ }
+
+ return count;
+} /* Channel_CountForUser */
+
+
+GLOBAL INT
+Channel_PCount( VOID )
+{
+ /* Count the number of persistent (mode 'P') channels */
+
+ CHANNEL *chan;
+ INT count;
+
+ count = 0;
+ chan = My_Channels;
+ while( chan )
+ {
+ if( strchr( chan->modes, 'P' )) count++;
+ chan = chan->next;
+ }
+
+ return count;
+} /* Channel_PCount */
+
+