Esempio n. 1
0
static int __init init(void) {
	int ret;
	char *tmpname;

	if (ports == 0)
		ports = 6112;

	memset(&sc, 0, sizeof(struct ip_nat_helper));

	sc.tuple.dst.protonum = IPPROTO_TCP;
	sc.tuple.src.u.udp.port = htons(ports);
	sc.mask.dst.protonum = 0xFFFF;
	sc.mask.src.u.tcp.port = 0xFFFF;
	sc.help = help;

	tmpname = &sc_names[0];
	sprintf(tmpname, "sc");
	sc.name = tmpname;

	DEBUGP("ip_nat_sc: Trying to register for port %d\n", ports);
	ret = ip_nat_helper_register(&sc);

	if (ret) {
		printk("ip_nat_sc: error registering helper for port %d\n", ports);
		fini();
		return ret;
	}

	return ret;
}
Esempio n. 2
0
static int __init init(void)
{
    int ret = 0;
    
    slport.list.next = 0;
    slport.list.prev = 0;
    slport.me = THIS_MODULE;
    slport.flags = (IP_NAT_HELPER_F_STANDALONE|IP_NAT_HELPER_F_ALWAYS);
    slport.tuple.dst.protonum = IPPROTO_TCP;
    
    slport.tuple.dst.u.tcp.port = __constant_htons(SL_PORT);
    slport.mask.dst.u.tcp.port = 0;
    slport.help = slport_help;
    slport.expect = NULL;

#ifdef SL_DEBUG
    printk(KERN_DEBUG "ip_nat_sl: Trying to register for port %d\n", SL_PORT);
#endif

    ret = ip_nat_helper_register(&slport);


    if (ret) {

#ifdef SL_DEBUG
        printk(KERN_ERR "ip_nat_sl: error registering helper for port %d\n", SL_PORT);
#endif

        fini();
      return ret;
    }
    return ret;
}
static int __init init(void)
{
	int ret = 0;
	int i;
	struct ip_nat_helper *hlpr;
	char *tmpname;

	if (ports[0] == 0) {
		ports[0] = IRC_PORT;
	}

	for (i = 0; (i < MAX_PORTS) && ports[i] != 0; i++) {
		hlpr = &ip_nat_irc_helpers[i];
		hlpr->tuple.dst.protonum = IPPROTO_TCP;
		hlpr->tuple.src.u.tcp.port = htons(ports[i]);
		hlpr->mask.src.u.tcp.port = 0xFFFF;
		hlpr->mask.dst.protonum = 0xFFFF;
		hlpr->help = help;
		hlpr->flags = 0;
		hlpr->me = THIS_MODULE;
		hlpr->expect = irc_nat_expected;

		tmpname = &irc_names[i][0];
		if (ports[i] == IRC_PORT)
			sprintf(tmpname, "irc");
		else
			sprintf(tmpname, "irc-%d", i);
		hlpr->name = tmpname;

		DEBUGP
		    ("ip_nat_irc: Trying to register helper for port %d: name %s\n",
		     ports[i], hlpr->name);
		ret = ip_nat_helper_register(hlpr);

		if (ret) {
			printk
			    ("ip_nat_irc: error registering helper for port %d\n",
			     ports[i]);
			fini();
			return 1;
		}
		ports_c++;
	}
	return ret;
}
Esempio n. 4
0
static int __init init(void)
{
	int ret = 0;
	int i;
	struct ip_nat_helper *hlpr;
	char *tmpname;

	if (ports[0] == 0) {
		ports[0] = 6667;
	}

	for (i = 0; (i < MAX_PORTS) && ports[i] != 0; i++) {
		hlpr = &ip_nat_irc_helpers[i];
		memset(hlpr, 0,
		       sizeof(struct ip_nat_helper));

		hlpr->tuple.dst.protonum = IPPROTO_TCP;
		hlpr->tuple.src.u.tcp.port = htons(ports[i]);
		hlpr->mask.src.u.tcp.port = 0xFFFF;
		hlpr->mask.dst.protonum = 0xFFFF;
		hlpr->help = help;
		hlpr->expect = irc_nat_expected;
		hlpr->mangle = NULL;

		tmpname = &ip_nih_names[i][0];
		sprintf(tmpname, "irc%2.2d", i);

		hlpr->name = tmpname;
		DEBUGP
		    ("ip_nat_irc: Trying to register helper for port %d: name %s\n",
		     ports[i], hlpr->name);
		ret = ip_nat_helper_register(hlpr);

		if (ret) {
			printk
			    ("ip_nat_irc: error registering helper for port %d\n",
			     ports[i]);
			fini();
			return -EBUSY;
		}
		ports_c++;
	}
	return ret;
}
Esempio n. 5
0
static int __init init(void)
{
	int i, ret = 0;
	char *tmpname;

	if (ports[0] == 0)
		ports[0] = MMS_PORT;

	for (i = 0; (i < MAX_PORTS) && ports[i]; i++) {

		memset(&mms[i], 0, sizeof(struct ip_nat_helper));

		mms[i].tuple.dst.protonum = IPPROTO_TCP;
		mms[i].tuple.src.u.tcp.port = htons(ports[i]);
		mms[i].mask.dst.protonum = 0xFFFF;
		mms[i].mask.src.u.tcp.port = 0xFFFF;
		mms[i].help = mms_nat_help;
		mms[i].me = THIS_MODULE;
		mms[i].flags = 0;
		mms[i].expect = mms_nat_expected;

		tmpname = &mms_names[i][0];
		if (ports[i] == MMS_PORT)
			sprintf(tmpname, "mms");
		else
			sprintf(tmpname, "mms-%d", i);
		mms[i].name = tmpname;

		DEBUGP("ip_nat_mms: register helper for port %d\n",
				ports[i]);
		ret = ip_nat_helper_register(&mms[i]);

		if (ret) {
			printk("ip_nat_mms: error registering "
			       "helper for port %d\n", ports[i]);
			fini();
			return ret;
		}
		ports_c++;
	}

	return ret;
}