Text   |  XML   |  ReML   |   Visible Warnings:

Null Pointer Dereference  at imem.c:25

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

sasl_server_auth_begin

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/login-common/sasl-server.c)expand/collapse
Show more  
 130  void sasl_server_auth_begin(struct client *client,
 131                              const char *service, const char *mech_name,
 132                              const char *initial_resp_base64,
 133                              sasl_server_callback_t *callback)
 134  {
 135          struct auth_request_info info;
 136          const struct auth_mech_desc *mech;
 137          const char *error;
 138   
 139          client->auth_attempts++;
 140          client->authenticating = TRUE;
 141          i_free(client->auth_mech_name);
 142          client->auth_mech_name = str_ucase(i_strdup(mech_name));
 143          client->sasl_callback = callback;
 144   
 145          mech = auth_client_find_mech(auth_client, mech_name);
 146          if (mech == NULL) {
 147                  sasl_server_auth_failed(client,
 148                          "Unsupported authentication mechanism.");
 149                  return;
 150          }
 151   
 152          if (!client->secured && disable_plaintext_auth &&
 153              (mech->flags & MECH_SEC_PLAINTEXT) != 0) {
 154                  sasl_server_auth_failed(client,
 155                          "Plaintext authentication disabled.");
 156                  return;
 157          }
 158   
 159          memset(&info, 0, sizeof(info));
 160          info.mech = mech->name;
 161          info.service = service;
 162          info.cert_username = client->proxy == NULL ? NULL :
 163[+]                 ssl_proxy_get_peer_name(client->proxy);
 164          info.flags = client_get_auth_flags(client);
 165          info.local_ip = client->local_ip;
 166          info.remote_ip = client->ip;
 167          info.local_port = client->local_port;
 168          info.remote_port = client->remote_port;
 169          info.initial_resp_base64 = initial_resp_base64;
 170   
 171          client->auth_request =
 172                  auth_client_request_new(auth_client, NULL, &info,
 173[+]                                         authenticate_callback, client, &error);
expand/collapse

auth_client_request_new

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-auth/auth-server-request.c)expand/collapse
Show more  
 318  struct auth_request *
 319  auth_client_request_new(struct auth_client *client, struct auth_connect_id *id,
 320                          const struct auth_request_info *request_info,
 321                          auth_request_callback_t *callback, void *context,
 322                          const char **error_r)
 323  {
 324          struct auth_server_connection *conn;
 325          struct auth_request *request;
 326   
 327          *error_r = "Temporary authentication failure.";
 328   
 329          if (id == NULL) {
 330                  conn = auth_server_connection_find_mech(client,
 331                                                          request_info->mech,
 332[+]                                                         error_r);
 333          } else {
 334                  *error_r = NULL;
 335                  conn = client->connections;
 336                  for (; conn != NULL; conn = conn->next) {
 337                          if (conn->connect_uid == id->connect_uid &&
 338                              conn->server_pid == id->server_pid)
 339                                  break;
 340                  }
 341          }
 342   
 343          if (conn == NULL)
 344                  return NULL;
 345   
 346          request = i_new(struct auth_request, 1);
 347          request->conn = conn;
 348          request->mech = i_strdup(request_info->mech);
 349          request->service = i_strdup(request_info->service);
 350[+]         request->cert_username = i_strdup(request_info->cert_username);
expand/collapse

i_strdup

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/imem.c)expand/collapse
Show more  
 23  char *i_strdup(const char *str)
 24  {
 25      char *rv = strdup( str );
Show more  
Show more  
Show more  




Change Warning 11813.25063 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: