/[rdesktop]/sourceforge.net/trunk/rdesktop/secure.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /sourceforge.net/trunk/rdesktop/secure.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 540 by astrand, Fri Oct 31 20:34:26 2003 UTC revision 557 by stargo, Wed Dec 10 08:02:59 2003 UTC
# Line 625  sec_parse_crypt_info(STREAM s, uint32 * Line 625  sec_parse_crypt_info(STREAM s, uint32 *
625          }          }
626          else          else
627          {          {
628                    uint32 certcount;
629    
630                  DEBUG_RDP5(("We're going for the RDP5-style encryption\n"));                  DEBUG_RDP5(("We're going for the RDP5-style encryption\n"));
631                  in_uint8s(s, 4);        /* Number of certificates */                  in_uint32_le(s, certcount); /* Number of certificates */
632    
633                    if(certcount < 2)
634                    {
635                            error("Server didn't send enough X509 certificates\n");
636                            return False;
637                    }
638    
639                    for(; certcount > 2; certcount--)
640                    { /* ignore all the certificates between the root and the signing CA */
641                            uint32 ignorelen;
642                            X509 *ignorecert;
643    
644                            DEBUG_RDP5(("Ignored certs left: %d\n", certcount));
645    
646                            in_uint32_le(s, ignorelen);
647                            DEBUG_RDP5(("Ignored Certificate length is %d\n", ignorelen));
648                            ignorecert = d2i_X509(NULL, &(s->p), ignorelen);
649    
650                            if(ignorecert == NULL)
651                            { /* XXX: error out? */
652                                    DEBUG_RDP5(("got a bad cert: this will probably screw up the rest of the communication\n"));
653                            }
654    
655    #ifdef WITH_DEBUG_RDP5
656                            DEBUG_RDP5(("cert #%d (ignored):\n",certcount));
657                            X509_print_fp(stdout, ignorecert);
658    #endif
659                    }
660    
661                  /* Do da funky X.509 stuffy                  /* Do da funky X.509 stuffy
662    

Legend:
Removed from v.540  
changed lines
  Added in v.557

  ViewVC Help
Powered by ViewVC 1.1.26