Update of /cvsroot/srvx/services/src
In directory usw-pr-cvs1:/tmp/cvs-serv4531/src
Modified Files:
nickserv.c proto-common.c proto.h
Log Message:
add GENMASK_NO_HIDING option for generate_hostmask(); use it for NickServ hostmask generation
fix oper_outranks() test
Index: nickserv.c
===================================================================
RCS file: /cvsroot/srvx/services/src/nickserv.c,v
retrieving revision 1.206
retrieving revision 1.207
diff -C2 -r1.206 -r1.207
*** nickserv.c 14 Sep 2002 04:01:53 -0000 1.206
--- nickserv.c 18 Sep 2002 14:53:59 -0000 1.207
***************
*** 615,619 ****
int
oper_outranks(struct userNode *user, struct handle_info *hi) {
! if (is_valid_oper(user, hi->opserv_level, 0)) return 1;
if (user->handle_info->opserv_level == hi->opserv_level) {
if ((user->handle_info->opserv_level == 1000)
--- 615,619 ----
int
oper_outranks(struct userNode *user, struct handle_info *hi) {
! if (user->handle_info->opserv_level > hi->opserv_level) return 1;
if (user->handle_info->opserv_level == hi->opserv_level) {
if ((user->handle_info->opserv_level == 1000)
***************
*** 1033,1039 ****
string_list_append(hi->masks, strdup("*@*"));
} else {
! string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK));
if (user->ip != 0) {
! string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP));
}
}
--- 1033,1039 ----
string_list_append(hi->masks, strdup("*@*"));
} else {
! string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING));
if (user->ip != 0) {
! string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP|GENMASK_NO_HIDING));
}
}
***************
*** 1082,1086 ****
}
} else if ((settee = GetUserH(argv[3]))) {
! mask = generate_hostmask(settee, GENMASK_OMITNICK);
} else {
nickserv_notice(user, NSMSG_REGISTER_BAD_NICKMASK, argv[3]);
--- 1082,1086 ----
}
} else if ((settee = GetUserH(argv[3]))) {
! mask = generate_hostmask(settee, GENMASK_OMITNICK|GENMASK_NO_HIDING);
} else {
nickserv_notice(user, NSMSG_REGISTER_BAD_NICKMASK, argv[3]);
***************
*** 1370,1374 ****
if (!policer_conforms(user->auth_policer, now, 1.0)) {
char *hostmask;
! hostmask = generate_hostmask(user, GENMASK_STRICT_HOST|GENMASK_BYIP);
log(NS_LOG, LOG_OTHER, "%s auto-gagged for repeated password guessing.\n", hostmask);
gag_create(hostmask, nickserv->nick, "Repeated password guessing.", now+nickserv_conf.autogag_duration);
--- 1370,1374 ----
if (!policer_conforms(user->auth_policer, now, 1.0)) {
char *hostmask;
! hostmask = generate_hostmask(user, GENMASK_STRICT_HOST|GENMASK_BYIP|GENMASK_NO_HIDING);
log(NS_LOG, LOG_OTHER, "%s auto-gagged for repeated password guessing.\n", hostmask);
gag_create(hostmask, nickserv->nick, "Repeated password guessing.", now+nickserv_conf.autogag_duration);
***************
*** 1646,1650 ****
{
if (argc < 2) {
! char *mask = generate_hostmask(user, GENMASK_OMITNICK);
int res = nickserv_addmask(user, user->handle_info, mask);
free(mask);
--- 1646,1650 ----
{
if (argc < 2) {
! char *mask = generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING);
int res = nickserv_addmask(user, user->handle_info, mask);
free(mask);
Index: proto-common.c
===================================================================
RCS file: /cvsroot/srvx/services/src/proto-common.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -r1.15 -r1.16
*** proto-common.c 15 Sep 2002 07:20:45 -0000 1.15
--- proto-common.c 18 Sep 2002 14:53:59 -0000 1.16
***************
*** 531,535 ****
}
hostname = user->hostname;
! if (IsHiddenHost(user) && user->handle_info && hidden_host_suffix) {
hostname = alloca(strlen(user->handle_info->handle) + strlen(hidden_host_suffix) + 2);
sprintf(hostname, "%s.%s", user->handle_info->handle, hidden_host_suffix);
--- 531,535 ----
}
hostname = user->hostname;
! if (IsHiddenHost(user) && user->handle_info && hidden_host_suffix && !(options & GENMASK_NO_HIDING)) {
hostname = alloca(strlen(user->handle_info->handle) + strlen(hidden_host_suffix) + 2);
sprintf(hostname, "%s.%s", user->handle_info->handle, hidden_host_suffix);
Index: proto.h
===================================================================
RCS file: /cvsroot/srvx/services/src/proto.h,v
retrieving revision 1.66
retrieving revision 1.67
diff -C2 -r1.66 -r1.67
*** proto.h 14 Sep 2002 03:48:59 -0000 1.66
--- proto.h 18 Sep 2002 14:53:59 -0000 1.67
***************
*** 192,195 ****
--- 192,196 ----
#define GENMASK_BYIP 8
#define GENMASK_SRVXMASK 16
+ #define GENMASK_NO_HIDING 128
char *generate_hostmask(struct userNode *user, int options);
|