]> andersk Git - gssapi-openssh.git/blobdiff - openssh/servconf.c
openssh-4.3p2-hpn12.diff
[gssapi-openssh.git] / openssh / servconf.c
index 81953bb80aac64f7082e690e55a936599c725e24..efe34a35c06956038ec603abe812378bac231599 100644 (file)
@@ -102,6 +102,10 @@ initialize_server_options(ServerOptions *options)
        options->authorized_keys_file2 = NULL;
        options->num_accept_env = 0;
        options->permit_tun = -1;
+        options->none_enabled = -1;
+        options->tcp_rcv_buf_poll = -1;
+       options->hpn_disabled = -1;
+       options->hpn_buffer_size = -1;
 
        /* Needs to be accessable in many places */
        use_privsep = -1;
@@ -110,6 +114,7 @@ initialize_server_options(ServerOptions *options)
 void
 fill_default_server_options(ServerOptions *options)
 {
+
        /* Portable-specific options */
        if (options->use_pam == -1)
                options->use_pam = 0;
@@ -233,10 +238,26 @@ fill_default_server_options(ServerOptions *options)
        if (options->permit_tun == -1)
                options->permit_tun = SSH_TUNMODE_NO;
 
+       if (options->hpn_disabled == -1) 
+               options->hpn_disabled = 0;
+
+       if (options->hpn_buffer_size == -1)
+               options->hpn_buffer_size = 2*1024*1024;
+       else {
+               if (options->hpn_buffer_size == 0)
+                       options->hpn_buffer_size = 1;
+               /* limit the maximum buffer to 7MB */
+               if (options->hpn_buffer_size > 7168)
+                       options->hpn_buffer_size = 7168;
+               options->hpn_buffer_size *=1024;
+       }
+
        /* Turn privilege separation on by default */
        if (use_privsep == -1)
                use_privsep = 1;
 
+
+
 #ifndef HAVE_MMAP
        if (use_privsep && options->compression == 1) {
                error("This platform does not support both privilege "
@@ -274,7 +295,8 @@ typedef enum {
        sHostbasedUsesNameFromPacketOnly, sClientAliveInterval,
        sClientAliveCountMax, sAuthorizedKeysFile, sAuthorizedKeysFile2,
        sGssAuthentication, sGssCleanupCreds, sAcceptEnv, sPermitTunnel,
-       sUsePrivilegeSeparation,
+       sUsePrivilegeSeparation, sNoneEnabled, sTcpRcvBufPoll, 
+       sHPNDisabled, sHPNBufferSize,
        sDeprecated, sUnsupported
 } ServerOpCodes;
 
@@ -376,6 +398,10 @@ static struct {
        { "authorizedkeysfile2", sAuthorizedKeysFile2 },
        { "useprivilegeseparation", sUsePrivilegeSeparation},
        { "acceptenv", sAcceptEnv },
+       { "noneenabled", sNoneEnabled },
+       { "hpndisabled", sHPNDisabled },
+       { "hpnbuffersize", sHPNBufferSize },
+       { "tcprcvbufpoll", sTcpRcvBufPoll },
        { "permittunnel", sPermitTunnel },
        { NULL, sBadOption }
 };
@@ -391,9 +417,9 @@ parse_token(const char *cp, const char *filename,
        u_int i;
 
        for (i = 0; keywords[i].name; i++)
-               if (strcasecmp(cp, keywords[i].name) == 0)
-                       return keywords[i].opcode;
-
+               if (strcasecmp(cp, keywords[i].name) == 0){
+                       debug ("TOKEN IS %s", keywords[i].name);
+                       return keywords[i].opcode;}
        error("%s: line %d: Bad configuration option: %s",
            filename, linenum, cp);
        return sBadOption;
@@ -457,6 +483,7 @@ process_server_config_line(ServerOptions *options, char *line,
        intptr = NULL;
        charptr = NULL;
        opcode = parse_token(arg, filename, linenum);
+
        switch (opcode) {
        /* Portable-specific options */
        case sUsePAM:
@@ -629,6 +656,22 @@ parse_flag:
                        *intptr = value;
                break;
 
+       case sNoneEnabled:
+               intptr = &options->none_enabled;
+               goto parse_flag;
+
+       case sTcpRcvBufPoll:
+               intptr = &options->tcp_rcv_buf_poll;
+               goto parse_flag;
+
+       case sHPNDisabled:
+               intptr = &options->hpn_disabled;
+               goto parse_flag;
+
+       case sHPNBufferSize:
+               intptr = &options->hpn_buffer_size;
+               goto parse_int;
+
        case sIgnoreUserKnownHosts:
                intptr = &options->ignore_user_known_hosts;
                goto parse_flag;
This page took 0.12832 seconds and 4 git commands to generate.