exit_server_cleanly("tsocket_strdup() failed");
}
+ client->global->local_address =
+ tsocket_address_string(sconn->local_address,
+ client->global);
+ if (client->global->local_address == NULL) {
+ exit_server_cleanly("tsocket_address_string() failed");
+ }
+ client->global->remote_address =
+ tsocket_address_string(sconn->remote_address,
+ client->global);
+ if (client->global->remote_address == NULL) {
+ exit_server_cleanly("tsocket_address_string() failed");
+ }
+ client->global->remote_name =
+ talloc_strdup(client->global, sconn->remote_hostname);
+ if (client->global->remote_name == NULL) {
+ exit_server_cleanly("tsocket_strdup() failed");
+ }
+
if (tsocket_address_is_inet(sconn->local_address, "ip")) {
locaddr = tsocket_address_inet_addr_string(
sconn->local_address,
return NT_STATUS_OBJECTID_NOT_FOUND;
}
+ if (global == NULL) {
+ /*
+ * most likely ndr_pull_struct_blob() failed
+ */
+ return NT_STATUS_INTERNAL_DB_CORRUPTION;
+ }
+
*_global = global;
return NT_STATUS_OK;
}
* store the information in the old format.
*/
+ SMB_ASSERT(global->local_address != NULL);
+ SMB_ASSERT(global->remote_address != NULL);
+ SMB_ASSERT(global->remote_name != NULL);
+
if (global->db_rec == NULL) {
return NT_STATUS_INTERNAL_ERROR;
}