components/proftpd/mod_gss-patches/ip4-mapped-gss-channel-bindings.patch
author Tomas Klacko <tomas.klacko@oracle.com>
Mon, 02 Jul 2012 11:16:01 -0700
changeset 902 908943bbfdb9
permissions -rw-r--r--
7087284 proftpd using GSS fails for IPv6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
902
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     1
--- a/mod_gss.c.in
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     2
+++ b/mod_gss.c.in
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     3
@@ -1412,6 +1412,87 @@ MODRET gss_auth(cmd_rec *cmd) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     4
     return HANDLED(cmd);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     5
 }
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     6
 
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     7
+#ifdef USE_IPV6 /* { */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     8
+#define IPV6_STR_SIZE   128
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
     9
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    10
+static int ip6_to_str(struct in6_addr* addr, char* buf, int size) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    11
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    12
+    const char *err;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    13
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    14
+    if(size<IPV6_STR_SIZE)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    15
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    16
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    17
+    memset(buf, 0, size);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    18
+    err=inet_ntop(AF_INET6, addr, buf, size-1);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    19
+    if(err!=buf)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    20
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    21
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    22
+    return 1;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    23
+}
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    24
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    25
+static int ip6_to_ip4(struct in6_addr *ip6, struct in_addr *ip4) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    26
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    27
+    char buf[IPV6_STR_SIZE];
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    28
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    29
+    if (!ip6_to_str(ip6, buf, IPV6_STR_SIZE))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    30
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    31
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    32
+    const char *ip4_str=strrchr(buf, ':');
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    33
+    if (ip4_str == 0)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    34
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    35
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    36
+    ip4_str++;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    37
+    if (!inet_aton(ip4_str, ip4))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    38
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    39
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    40
+    return 1;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    41
+}
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    42
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    43
+static int set_chan_v4mapped(
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    44
+    gss_channel_bindings_t chan, struct in_addr *ia, struct in_addr *aa) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    45
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    46
+    if (!ip6_to_ip4(&(session.c->remote_addr->na_addr.v6.sin6_addr), ia))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    47
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    48
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    49
+    if (!ip6_to_ip4(&(session.c->local_addr->na_addr.v6.sin6_addr), aa))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    50
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    51
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    52
+    chan->initiator_addrtype = GSS_C_AF_INET;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    53
+    chan->initiator_address.length = sizeof(struct in_addr);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    54
+    chan->initiator_address.value = ia;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    55
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    56
+    chan->acceptor_addrtype = GSS_C_AF_INET;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    57
+    chan->acceptor_address.length = sizeof(struct in_addr);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    58
+    chan->acceptor_address.value = aa;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    59
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    60
+    chan->application_data.length = 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    61
+    chan->application_data.value = 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    62
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    63
+    return 1;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    64
+}
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    65
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    66
+static int try_v4mapped() {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    67
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    68
+    struct in6_addr* addr;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    69
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    70
+    if (pr_netaddr_get_family(session.c->remote_addr) != AF_INET6)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    71
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    72
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    73
+    if (pr_netaddr_get_family(session.c->local_addr) != AF_INET6)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    74
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    75
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    76
+    addr = (struct in6_addr*)pr_netaddr_get_inaddr(session.c->remote_addr);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    77
+    if (!IN6_IS_ADDR_V4MAPPED(addr))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    78
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    79
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    80
+    addr = (struct in6_addr*)pr_netaddr_get_inaddr(session.c->local_addr);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    81
+    if (!IN6_IS_ADDR_V4MAPPED(addr))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    82
+        return 0;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    83
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    84
+    return 1;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    85
+}
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    86
+#endif /* } */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    87
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    88
 /*
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    89
    AUTHENTICATION/SECURITY DATA (ADAT)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    90
 
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    91
@@ -1527,6 +1608,12 @@ MODRET gss_adat(cmd_rec *cmd) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    92
     char *gbuf ;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    93
   
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    94
     gss_channel_bindings_t chan=GSS_C_NO_CHANNEL_BINDINGS;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    95
+    gss_channel_bindings_t chan_sl=GSS_C_NO_CHANNEL_BINDINGS;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    96
+#ifdef USE_IPV6
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    97
+    gss_channel_bindings_t chan_v4m=GSS_C_NO_CHANNEL_BINDINGS;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    98
+    struct in_addr ia;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
    99
+    struct in_addr aa;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   100
+#endif
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   101
 
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   102
     if (!gss_engine)
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   103
         return DECLINED(cmd);
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   104
@@ -1631,13 +1718,22 @@ MODRET gss_adat(cmd_rec *cmd) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   105
 	    continue;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   106
 	}
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   107
 
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   108
+        chan_sl = chan;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   109
+#ifdef USE_IPV6
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   110
+        if (try_v4mapped()) {
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   111
+            chan_v4m = pcalloc(cmd->tmp_pool,sizeof(*chan_v4m));
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   112
+            if (set_chan_v4mapped(chan_v4m, &ia, &aa))
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   113
+                chan_sl = chan_v4m;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   114
+        }
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   115
+#endif
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   116
+
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   117
 	found++;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   118
 	gcontext = GSS_C_NO_CONTEXT;
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   119
 	accept_maj = gss_accept_sec_context(&accept_min,
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   120
 	   				    &gcontext, /* context_handle */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   121
 					    server_creds, /* verifier_cred_handle */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   122
 					    &tok, /* input_token */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   123
-					    chan, /* channel bindings */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   124
+					    chan_sl, /* channel bindings */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   125
 					    &client, /* src_name */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   126
 					    &mechid, /* mech_type */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   127
 					    &out_tok, /* output_token */
908943bbfdb9 7087284 proftpd using GSS fails for IPv6
Tomas Klacko <tomas.klacko@oracle.com>
parents:
diff changeset
   128