X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=crypt.cpp;h=051dbb321bc7c26e7b6ccc8738c33c77bbeb639e;hp=2babfb771e113377529e40eaa454a47c75d74a20;hb=701b046a45c2c79cc6d07ac3a4f84f499f7ed376;hpb=2ed0fee489c37a6e2d4473f6185ebbe3e746ac11 diff --git a/crypt.cpp b/crypt.cpp index 2babfb7..051dbb3 100644 --- a/crypt.cpp +++ b/crypt.cpp @@ -293,10 +293,7 @@ unsigned long crc32(unsigned char *data, int len) unsigned long crc = 0xffffffff; if (!crc_initialized) - { - PERROR("crc not initialized, exitting..."); - exit(-1); - } + FATAL("crc not initialized, exitting..."); while (len--) crc = (crc >> 8) ^ crc32_table[(crc & 0xFF) ^ *data++]; @@ -577,8 +574,7 @@ static void *keyengine_child(void *arg) /* exit process */ apppbx->ea_endpoint->ep_use--; - memset(args, 0, sizeof(struct auth_args)); - free(args); + FREE(args, sizeof(struct auth_args)); amemuse--; return(NULL); } @@ -595,14 +591,7 @@ void EndpointAppPBX::cryptman_keyengine(int job) return; } - arg = (struct auth_args *)calloc(1, sizeof(struct auth_args)); - if (!arg) - { - PERROR("failed to alloc memory.\n"); - e_crypt_keyengine_return = -1; - return; - } - + arg = (struct auth_args *)MALLOC(sizeof(struct auth_args)); arg->apppbx = this; arg->job = job; e_crypt_keyengine_return = 0; @@ -1535,7 +1524,7 @@ void EndpointAppPBX::cryptman_msg2user(int msg, char *text) { struct message *message; /* send message */ - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = msg; if (!text) text = ""; @@ -1814,7 +1803,7 @@ void EndpointAppPBX::encrypt_shared(void) if (e_crypt != CRYPT_OFF) { PDEBUG(DEBUG_EPOINT, "EPOINT(%d) encryption in progress, so we request the current message.\n", ea_endpoint->ep_serial); - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = CU_INFO_REQ; message_put(message); return; @@ -1832,8 +1821,8 @@ void EndpointAppPBX::encrypt_shared(void) } /* check the key for the call */ - if (port->p_type==PORT_TYPE_DSS1_TE_OUT || port->p_type==PORT_TYPE_DSS1_NT_OUT || port->p_type==PORT_TYPE_SIP_OUT) - ret = parse_secrets((char *)e_terminal, (char *)port->p_dialinginfo.number, &auth_pointer, &crypt_pointer, &key_pointer); + if (port->p_type==PORT_TYPE_DSS1_TE_OUT || port->p_type==PORT_TYPE_DSS1_NT_OUT) + ret = parse_secrets((char *)e_ext.number, (char *)port->p_dialinginfo.id, &auth_pointer, &crypt_pointer, &key_pointer); else { if (!port->p_callerinfo.id[0]) @@ -1842,7 +1831,7 @@ void EndpointAppPBX::encrypt_shared(void) errstr = "No Remote ID"; goto reject; } - ret = parse_secrets((char *)e_terminal, (char *)numberrize_callerinfo(port->p_callerinfo.id, port->p_callerinfo.ntype), &auth_pointer, &crypt_pointer, &key_pointer); + ret = parse_secrets((char *)e_ext.number, (char *)numberrize_callerinfo(port->p_callerinfo.id, port->p_callerinfo.ntype), &auth_pointer, &crypt_pointer, &key_pointer); } if (!ret) { @@ -1896,7 +1885,7 @@ void EndpointAppPBX::encrypt_shared(void) // SPRINT(e_crypt_display, "Shared Key"); e_crypt = CRYPT_SWAIT; /* sending activation */ - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = CU_ACTS_REQ; message->param.crypt.len = key_len; memcpy(message->param.crypt.data, key, key_len); @@ -1916,7 +1905,7 @@ void EndpointAppPBX::encrypt_keyex(void) if (e_crypt != CRYPT_OFF) { PDEBUG(DEBUG_EPOINT, "EPOINT(%d) encryption in progress, so we request the current message.\n", ea_endpoint->ep_serial); - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = CU_INFO_REQ; message_put(message); return; @@ -1948,7 +1937,7 @@ void EndpointAppPBX::encrypt_keyex(void) message_put(message); e_crypt = CRYPT_KWAIT; /* sending activation */ - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = CU_ACTK_REQ; message_put(message); #endif /* CRYPTO */ @@ -1986,7 +1975,7 @@ void EndpointAppPBX::encrypt_off(void) message_put(message); e_crypt = CRYPT_RELEASE; /* sending activation */ - message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_call_id, EPOINT_TO_CALL, MESSAGE_CRYPT); + message = message_create(ea_endpoint->ep_serial, ea_endpoint->ep_join_id, EPOINT_TO_JOIN, MESSAGE_CRYPT); message->param.crypt.type = CU_DACT_REQ; message_put(message); } @@ -2044,3 +2033,4 @@ void EndpointAppPBX::encrypt_result(int msg, char *text) } } +