]> jfr.im git - solanum.git/blobdiff - modules/core/m_join.c
m_info: Correct description of general::client_exit like in example confs.
[solanum.git] / modules / core / m_join.c
index 1257fb585944f4888cf9c7105ae58437798494ec..bba9eaf141ced267857c408ad721fb5be08f2a3b 100644 (file)
@@ -41,6 +41,7 @@
 #include "modules.h"
 #include "packet.h"
 #include "chmode.h"
 #include "modules.h"
 #include "packet.h"
 #include "chmode.h"
+#include "ratelimit.h"
 
 static int m_join(struct Client *, struct Client *, int, const char **);
 static int ms_join(struct Client *, struct Client *, int, const char **);
 
 static int m_join(struct Client *, struct Client *, int, const char **);
 static int ms_join(struct Client *, struct Client *, int, const char **);
@@ -255,8 +256,10 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p
 
                        if(moduledata.approved != 0)
                        {
 
                        if(moduledata.approved != 0)
                        {
+#ifdef XXX_NOTYET
                                sendto_one(source_p, form_str(moduledata.approved),
                                           me.name, source_p->name, name);
                                sendto_one(source_p, form_str(moduledata.approved),
                                           me.name, source_p->name, name);
+#endif
                                continue;
                        }
 
                                continue;
                        }
 
@@ -301,9 +304,10 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p
                         * see extensions/chm_operonly.c for other comments on this
                         * -- dwr
                         */
                         * see extensions/chm_operonly.c for other comments on this
                         * -- dwr
                         */
+#ifdef XXX_NOTYET
                        if(i != ERR_CUSTOM)
                                sendto_one(source_p, form_str(i), me.name, source_p->name, name);
                        if(i != ERR_CUSTOM)
                                sendto_one(source_p, form_str(i), me.name, source_p->name, name);
-
+#endif
                        continue;
                }
                else if(chptr != chptr2)
                        continue;
                }
                else if(chptr != chptr2)
@@ -325,6 +329,9 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p
                }
                chptr->join_count++;
 
                }
                chptr->join_count++;
 
+               /* credit user for join */
+               credit_client_join(source_p);
+
                /* we send the user their join here, because we could have to
                 * send a mode out next.
                 */
                /* we send the user their join here, because we could have to
                 * send a mode out next.
                 */
@@ -394,7 +401,6 @@ ms_join(struct Client *client_p, struct Client *source_p, int parc, const char *
        time_t newts;
        int isnew;
        int keep_our_modes = YES;
        time_t newts;
        int isnew;
        int keep_our_modes = YES;
-       int keep_new_modes = YES;
        rb_dlink_node *ptr, *next_ptr;
 
        /* special case for join 0 */
        rb_dlink_node *ptr, *next_ptr;
 
        /* special case for join 0 */
@@ -456,8 +462,6 @@ ms_join(struct Client *client_p, struct Client *source_p, int parc, const char *
                keep_our_modes = NO;
                chptr->channelts = newts;
        }
                keep_our_modes = NO;
                chptr->channelts = newts;
        }
-       else
-               keep_new_modes = NO;
 
        /* Lost the TS, other side wins, so remove modes on this side */
        if(!keep_our_modes)
 
        /* Lost the TS, other side wins, so remove modes on this side */
        if(!keep_our_modes)