/[winpt]/trunk/Src/wptKeyserver.cpp
ViewVC logotype

Diff of /trunk/Src/wptKeyserver.cpp

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

revision 219 by twoaday, Sun May 14 18:40:36 2006 UTC revision 220 by twoaday, Tue May 30 15:31:49 2006 UTC
# Line 146  check_hkp_response (const char *resp, in Line 146  check_hkp_response (const char *resp, in
146      char *p, *end;      char *p, *end;
147      int ec, len;      int ec, len;
148    
149        log_debug ("check_hkp_response: '%s'\r\n", resp);
150      ec = recv ? WPTERR_WINSOCK_RECVKEY : WPTERR_WINSOCK_SENDKEY;      ec = recv ? WPTERR_WINSOCK_RECVKEY : WPTERR_WINSOCK_SENDKEY;
151      if (!strstr (resp, "HTTP/1.0 200 OK") &&      if (!strstr (resp, "HTTP/1.0 200 OK") &&
152          !strstr (resp, "HTTP/1.1 200 OK")) /* http error */          !strstr (resp, "HTTP/1.1 200 OK")) /* http error */
# Line 452  kserver_check_inet_connection (void) Line 453  kserver_check_inet_connection (void)
453          closesocket (fd);          closesocket (fd);
454          return 0;          return 0;
455      }      }
456        log_debug ("kserver_check_inet_connection: no inet connection.\r\n");
457      return -1;      return -1;
458  }  }
459    
# Line 535  proto_from_URL (const char *buf) Line 537  proto_from_URL (const char *buf)
537  }  }
538    
539    
540    /* Set the default keyserver.
541       If @hostname is NULL, use the predefined keyserver. */
542  void  void
543  keyserver_set_default (const char *hostname, WORD port)  keyserver_set_default (const char *hostname, WORD port)
544  {  {
545        if (!port)
546            port = HKP_PORT;
547      if (hostname != NULL) {      if (hostname != NULL) {
548          free_if_alloc (default_keyserver);          free_if_alloc (default_keyserver);
549          default_keyserver = m_strdup (hostname);          default_keyserver = m_strdup (hostname);
550          default_keyserver_port = port;          default_keyserver_port = port;
551      }      }
552      if (!port)      if (!default_keyserver) {
         port = HKP_PORT;  
     if (!default_keyserver)  
553          default_keyserver = m_strdup (DEF_HKP_KEYSERVER);          default_keyserver = m_strdup (DEF_HKP_KEYSERVER);
554            default_keyserver_port = HKP_PORT;
555        }
556      server[0].name =  m_strdup (default_keyserver);      server[0].name =  m_strdup (default_keyserver);
557      server[0].used = 1;      server[0].used = 1;
558      server[0].port = port;      server[0].port = port;
# Line 854  kserver_send_request (const char *hostna Line 860  kserver_send_request (const char *hostna
860      }      }
861    
862      free_if_alloc (enc_pubkey);      free_if_alloc (enc_pubkey);
863      log_debug ("%s\r\n", request);      log_debug ("request:\r\n%s\r\n", request);
864      return request;      return request;
865  }  }
866    
# Line 899  kserver_recvkey (const char *hostname, W Line 905  kserver_recvkey (const char *hostname, W
905          _snprintf (request, reqlen, fmt, keyid);          _snprintf (request, reqlen, fmt, keyid);
906      }      }
907    
908      log_debug ("%s\r\n", request);      log_debug ("request:\r\n%s\r\n", request);
909            
910      rc = sock_write (conn_fd, request, strlen (request));      rc = sock_write (conn_fd, request, strlen (request));
911      if (rc == SOCKET_ERROR) {      if (rc == SOCKET_ERROR) {
# Line 913  kserver_recvkey (const char *hostname, W Line 919  kserver_recvkey (const char *hostname, W
919          goto leave;          goto leave;
920      }      }
921    
922      log_debug ("%s\r\n", *r_key);      log_debug ("response:\r\n%s\r\n", *r_key);
923      rc = check_hkp_response (*r_key, 1);      rc = check_hkp_response (*r_key, 1);
924      if (rc)      if (rc)
925          goto leave;          goto leave;
# Line 1173  parse_uid_record (keyserver_key_s *key, Line 1179  parse_uid_record (keyserver_key_s *key,
1179              break;              break;
1180    
1181          case UID:          case UID:
1182              /* XXX: search for %3A and decode it back to ':' */              unhexify_buffer (p, &u->uid);
             u->uid = m_strdup (p);  
1183              break;              break;
1184    
1185          case CREATE:          case CREATE:
# Line 1232  kserver_search_next (int fd, keyserver_k Line 1237  kserver_search_next (int fd, keyserver_k
1237      for (;;) {      for (;;) {
1238          if (sock_getline (fd, buf, sizeof (buf)-1, &n))          if (sock_getline (fd, buf, sizeof (buf)-1, &n))
1239              break;              break;
1240            /*log_debug ("record: '%s'\r\n", buf); */
1241          if (!strncmp (buf, "pub", 3))          if (!strncmp (buf, "pub", 3))
1242              parse_pub_record (key, buf);              parse_pub_record (key, buf);
1243          else          else
# Line 1504  parse_keyserver_url (char **r_keyserver, Line 1510  parse_keyserver_url (char **r_keyserver,
1510      /* XXX: remove / in .de/:11371 */      /* XXX: remove / in .de/:11371 */
1511      *r_keyserver = substr (url, 0, (p-url));          *r_keyserver = substr (url, 0, (p-url));    
1512      *r_port = atoi (url+(p-url)+1);      *r_port = atoi (url+(p-url)+1);
1513      safe_free (url);      free_if_alloc (url);
1514      return 0;      return 0;
1515  }  }

Legend:
Removed from v.219  
changed lines
  Added in v.220

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26