Add lintian-overrides file; silence lintian message "no-upstream-changelog"
[aiccu.git] / common / aiccu_darwin.c
blobb032e4434645df1d51db1c1398c599498fdc7438
1 /**********************************************************
2 SixXS - Automatic IPv6 Connectivity Configuration Utility
3 ***********************************************************
4 Copyright 2003-2005 SixXS - http://www.sixxs.net
5 ***********************************************************
6 common/aiccu_darwin.c - Darwin
7 ***********************************************************
8 $Author: jeroen $
9 $Id: aiccu_darwin.c,v 1.11 2007-01-07 17:02:11 jeroen Exp $
10 $Date: 2007-01-07 17:02:11 $
11 **********************************************************/
13 #include "aiccu.h"
15 bool aiccu_os_install(void)
17 return true;
20 bool aiccu_os_setup(struct TIC_Tunnel *hTunnel)
22 if (hTunnel->uses_tundev == 0)
24 aiccu_exec(
25 "/sbin/ifconfig %s tunnel %s %s",
26 g_aiccu->ipv6_interface,
27 strcmp(hTunnel->sIPv4_Local, "heartbeat") == 0 ? "0.0.0.0" : hTunnel->sIPv4_Local,
28 hTunnel->sIPv4_POP);
31 /* Bring the interface up */
32 aiccu_exec(
33 "ifconfig %s up",
34 g_aiccu->ipv6_interface);
36 /* Configure the MTU */
37 aiccu_exec(
38 "ifconfig %s mtu %u",
39 g_aiccu->ipv6_interface,
40 hTunnel->nMTU);
42 /* PtP link, so we can use the PtP syntax */
43 aiccu_exec(
44 "ifconfig %s inet6 %s %s prefixlen 128 alias",
45 g_aiccu->ipv6_interface,
46 hTunnel->sIPv6_Local,
47 hTunnel->sIPv6_POP);
49 /* Configure a path to the other side */
50 if (g_aiccu->defaultroute)
52 aiccu_exec(
53 "route add -inet6 %s %s",
54 "default",
55 hTunnel->sIPv6_POP);
58 return true;
61 void aiccu_os_reconfig(struct TIC_Tunnel *hTunnel)
63 if (hTunnel->uses_tundev == 0)
65 aiccu_exec(
66 "/sbin/ifconfig %s tunnel %s %s",
67 g_aiccu->ipv6_interface,
68 hTunnel->sIPv4_Local,
69 hTunnel->sIPv4_POP);
73 void aiccu_os_delete(struct TIC_Tunnel *hTunnel)
75 hTunnel = hTunnel;
76 aiccu_exec(
77 "ifconfig %s down",
78 g_aiccu->ipv6_interface);
80 if (hTunnel->uses_tundev == 0)
82 aiccu_exec(
83 "ifconfig %s deletetunnel",
84 g_aiccu->ipv6_interface);