ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/modules/m_svsmode.c
(Generate patch)

Comparing ircd-hybrid/trunk/modules/m_svsmode.c (file contents):
Revision 2055 by michael, Wed May 15 19:37:57 2013 UTC vs.
Revision 2056 by michael, Thu May 16 07:55:16 2013 UTC

# Line 62 | Line 62 | ms_svsmode(struct Client *client_p, stru
62   {
63    struct Client *target_p = NULL;
64    int what = MODE_ADD;
65 <  unsigned int flag = 0, setflags = 0;
65 >  unsigned int flag = 0, setmodes = 0;
66    char *m = NULL, *modes = NULL, *extarg = NULL;
67    time_t ts = 0;
68  
# Line 87 | Line 87 | ms_svsmode(struct Client *client_p, stru
87    if (ts && (ts != target_p->tsinfo))
88      return;
89  
90 <  setflags = target_p->umodes;
90 >  setmodes = target_p->umodes;
91  
92    for (m = modes; *m; ++m)
93    {
# Line 105 | Line 105 | ms_svsmode(struct Client *client_p, stru
105            strlcpy(target_p->svid, extarg, sizeof(target_p->svid));
106          break;
107  
108 +      case 'x':
109 +        if (what == MODE_ADD && extarg)
110 +          user_set_hostmask(target_p, extarg);
111 +        break;
112 +
113        case 'o':
114          if (what == MODE_DEL && HasUMode(target_p, UMODE_OPER))
115          {
# Line 173 | Line 178 | ms_svsmode(struct Client *client_p, stru
178                    target_p->name, (unsigned long)target_p->tsinfo, modes);
179    }
180  
181 <  if (MyConnect(target_p) && (setflags != target_p->umodes))
181 >  if (MyConnect(target_p) && (setmodes != target_p->umodes))
182    {
183      char modebuf[IRCD_BUFSIZE];
184  
185 <    send_umode(target_p, target_p, setflags, 0xffffffff, modebuf);
185 >    send_umode(target_p, target_p, setmodes, 0xffffffff, modebuf);
186    }
187   }
188  

Diff Legend

– Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)