gitextract_nh3snu39/ ├── .github/ │ └── workflows/ │ └── main.yml ├── .gitignore ├── AUTHORS ├── CMakeLists.txt ├── COPYING ├── Doxyfile ├── NEWS ├── README.md ├── THANKS ├── TODO ├── cmake/ │ ├── CheckCXX11Regex.cmake │ ├── FindCcrtp.cmake │ ├── FindCommoncpp.cmake │ ├── FindG729.cmake │ ├── FindGsm.cmake │ ├── FindIlbc.cmake │ ├── FindLibMagic.cmake │ ├── FindLibSndfile.cmake │ ├── FindReadline.cmake │ ├── FindSpeex.cmake │ ├── FindUcommon.cmake │ └── FindZrtpcpp.cmake ├── data/ │ ├── providers.csv │ └── twinkle.1 ├── sip.protocol ├── src/ │ ├── CMakeLists.txt │ ├── abstract_dialog.cpp │ ├── abstract_dialog.h │ ├── address_book.cpp │ ├── address_book.h │ ├── audio/ │ │ ├── CMakeLists.txt │ │ ├── README_G711 │ │ ├── audio_codecs.cpp │ │ ├── audio_codecs.h │ │ ├── audio_decoder.cpp │ │ ├── audio_decoder.h │ │ ├── audio_device.cpp │ │ ├── audio_device.h │ │ ├── audio_encoder.cpp │ │ ├── audio_encoder.h │ │ ├── audio_rx.cpp │ │ ├── audio_rx.h │ │ ├── audio_session.cpp │ │ ├── audio_session.h │ │ ├── audio_tx.cpp │ │ ├── audio_tx.h │ │ ├── dtmf_player.cpp │ │ ├── dtmf_player.h │ │ ├── freq_gen.cpp │ │ ├── freq_gen.h │ │ ├── g711.cpp │ │ ├── g711.h │ │ ├── g721.cpp │ │ ├── g722.h │ │ ├── g722_decode.c │ │ ├── g722_encode.c │ │ ├── g722_local.h │ │ ├── g723_16.cpp │ │ ├── g723_24.cpp │ │ ├── g723_40.cpp │ │ ├── g72x.cpp │ │ ├── g72x.h │ │ ├── gsm/ │ │ │ ├── COPYRIGHT │ │ │ ├── ChangeLog │ │ │ ├── INSTALL │ │ │ ├── MACHINES │ │ │ ├── README │ │ │ ├── inc/ │ │ │ │ ├── config.h │ │ │ │ ├── gsm.h │ │ │ │ ├── private.h │ │ │ │ ├── proto.h │ │ │ │ └── unproto.h │ │ │ └── src/ │ │ │ ├── CMakeLists.txt │ │ │ ├── add.cpp │ │ │ ├── code.cpp │ │ │ ├── debug.cpp │ │ │ ├── decode.cpp │ │ │ ├── gsm_create.cpp │ │ │ ├── gsm_decode.cpp │ │ │ ├── gsm_destroy.cpp │ │ │ ├── gsm_encode.cpp │ │ │ ├── gsm_explode.cpp │ │ │ ├── gsm_implode.cpp │ │ │ ├── gsm_option.cpp │ │ │ ├── gsm_print.cpp │ │ │ ├── long_term.cpp │ │ │ ├── lpc.cpp │ │ │ ├── preprocess.cpp │ │ │ ├── rpe.cpp │ │ │ ├── short_term.cpp │ │ │ └── table.cpp │ │ ├── media_buffer.cpp │ │ ├── media_buffer.h │ │ ├── rtp_telephone_event.cpp │ │ ├── rtp_telephone_event.h │ │ ├── tone_gen.cpp │ │ ├── tone_gen.h │ │ ├── twinkle_rtp_session.cpp │ │ ├── twinkle_rtp_session.h │ │ ├── twinkle_zrtp_ui.cpp │ │ └── twinkle_zrtp_ui.h │ ├── audits/ │ │ ├── CMakeLists.txt │ │ ├── memman.cpp │ │ └── memman.h │ ├── auth.cpp │ ├── auth.h │ ├── call_history.cpp │ ├── call_history.h │ ├── call_script.cpp │ ├── call_script.h │ ├── client_request.cpp │ ├── client_request.h │ ├── cmd_socket.cpp │ ├── cmd_socket.h │ ├── dialog.cpp │ ├── dialog.h │ ├── diamondcard.cpp │ ├── diamondcard.h │ ├── epa.cpp │ ├── epa.h │ ├── events.cpp │ ├── events.h │ ├── exceptions.h │ ├── gui/ │ │ ├── CMakeLists.txt │ │ ├── address_finder.cpp │ │ ├── address_finder.h │ │ ├── addresscardform.cpp │ │ ├── addresscardform.h │ │ ├── addresscardform.ui │ │ ├── addresstablemodel.cpp │ │ ├── addresstablemodel.h │ │ ├── akonadiaddressbook.cpp │ │ ├── akonadiaddressbook.h │ │ ├── authenticationform.cpp │ │ ├── authenticationform.h │ │ ├── authenticationform.ui │ │ ├── buddyform.cpp │ │ ├── buddyform.h │ │ ├── buddyform.ui │ │ ├── buddylistview.cpp │ │ ├── buddylistview.h │ │ ├── command_args.h │ │ ├── core_strings.h │ │ ├── deregisterform.cpp │ │ ├── deregisterform.h │ │ ├── deregisterform.ui │ │ ├── diamondcardprofileform.cpp │ │ ├── diamondcardprofileform.h │ │ ├── diamondcardprofileform.ui │ │ ├── dtmfform.cpp │ │ ├── dtmfform.h │ │ ├── dtmfform.ui │ │ ├── getaddressform.cpp │ │ ├── getaddressform.h │ │ ├── getaddressform.ui │ │ ├── getprofilenameform.cpp │ │ ├── getprofilenameform.h │ │ ├── getprofilenameform.ui │ │ ├── gui.cpp │ │ ├── gui.h │ │ ├── historyform.cpp │ │ ├── historyform.h │ │ ├── historyform.ui │ │ ├── icons.qrc │ │ ├── idlesession_inhibitor.cpp │ │ ├── idlesession_inhibitor.h │ │ ├── idlesession_manager.cpp │ │ ├── idlesession_manager.h │ │ ├── images/ │ │ │ ├── editcopy │ │ │ ├── editcut │ │ │ ├── editpaste │ │ │ ├── filenew │ │ │ ├── filesave │ │ │ ├── print │ │ │ ├── redo │ │ │ ├── searchfind │ │ │ └── undo │ │ ├── incoming_call_popup.cpp │ │ ├── incoming_call_popup.h │ │ ├── inviteform.cpp │ │ ├── inviteform.h │ │ ├── inviteform.ui │ │ ├── kcontactstablemodel.cpp │ │ ├── kcontactstablemodel.h │ │ ├── lang/ │ │ │ ├── twinkle_cs.ts │ │ │ ├── twinkle_de.ts │ │ │ ├── twinkle_fr.ts │ │ │ ├── twinkle_nl.ts │ │ │ ├── twinkle_ru.ts │ │ │ ├── twinkle_sk.ts │ │ │ ├── twinkle_sv.ts │ │ │ └── twinkle_xx.ts │ │ ├── logviewform.cpp │ │ ├── logviewform.h │ │ ├── logviewform.ui │ │ ├── main.cpp │ │ ├── messageform.cpp │ │ ├── messageform.h │ │ ├── messageform.ui │ │ ├── messageformview.cpp │ │ ├── messageformview.h │ │ ├── mphoneform.cpp │ │ ├── mphoneform.h │ │ ├── mphoneform.ui │ │ ├── numberconversionform.cpp │ │ ├── numberconversionform.h │ │ ├── numberconversionform.ui │ │ ├── osd.cpp │ │ ├── osd.h │ │ ├── qml/ │ │ │ ├── ImageButton.qml │ │ │ ├── TextImageButton.qml │ │ │ ├── incoming_call.qml │ │ │ ├── osd.qml │ │ │ └── qml.qrc │ │ ├── qt_translator.h │ │ ├── redirectform.cpp │ │ ├── redirectform.h │ │ ├── redirectform.ui │ │ ├── selectnicform.cpp │ │ ├── selectnicform.h │ │ ├── selectnicform.ui │ │ ├── selectprofileform.cpp │ │ ├── selectprofileform.h │ │ ├── selectprofileform.ui │ │ ├── selectuserform.cpp │ │ ├── selectuserform.h │ │ ├── selectuserform.ui │ │ ├── sendfileform.cpp │ │ ├── sendfileform.h │ │ ├── sendfileform.ui │ │ ├── srvredirectform.cpp │ │ ├── srvredirectform.h │ │ ├── srvredirectform.ui │ │ ├── syssettingsform.cpp │ │ ├── syssettingsform.h │ │ ├── syssettingsform.ui │ │ ├── termcapform.cpp │ │ ├── termcapform.h │ │ ├── termcapform.ui │ │ ├── transferform.cpp │ │ ├── transferform.h │ │ ├── transferform.ui │ │ ├── twinkle-uri-handler │ │ ├── twinkleapplication.cpp │ │ ├── twinkleapplication.h │ │ ├── userprofileform.cpp │ │ ├── userprofileform.h │ │ ├── userprofileform.ui │ │ ├── wizardform.cpp │ │ ├── wizardform.h │ │ ├── wizardform.ui │ │ ├── yesnodialog.cpp │ │ └── yesnodialog.h │ ├── id_object.cpp │ ├── id_object.h │ ├── im/ │ │ ├── CMakeLists.txt │ │ ├── im_iscomposing_body.cpp │ │ ├── im_iscomposing_body.h │ │ ├── msg_session.cpp │ │ └── msg_session.h │ ├── line.cpp │ ├── line.h │ ├── listener.cpp │ ├── listener.h │ ├── log.cpp │ ├── log.h │ ├── main.cpp │ ├── mwi/ │ │ ├── CMakeLists.txt │ │ ├── mwi.cpp │ │ ├── mwi.h │ │ ├── mwi_dialog.cpp │ │ ├── mwi_dialog.h │ │ ├── mwi_subscription.cpp │ │ ├── mwi_subscription.h │ │ ├── simple_msg_sum_body.cpp │ │ └── simple_msg_sum_body.h │ ├── parser/ │ │ ├── CMakeLists.txt │ │ ├── challenge.cpp │ │ ├── challenge.h │ │ ├── coding.cpp │ │ ├── coding.h │ │ ├── credentials.cpp │ │ ├── credentials.h │ │ ├── definitions.cpp │ │ ├── definitions.h │ │ ├── hdr_accept.cpp │ │ ├── hdr_accept.h │ │ ├── hdr_accept_encoding.cpp │ │ ├── hdr_accept_encoding.h │ │ ├── hdr_accept_language.cpp │ │ ├── hdr_accept_language.h │ │ ├── hdr_alert_info.cpp │ │ ├── hdr_alert_info.h │ │ ├── hdr_allow.cpp │ │ ├── hdr_allow.h │ │ ├── hdr_allow_events.cpp │ │ ├── hdr_allow_events.h │ │ ├── hdr_auth_info.cpp │ │ ├── hdr_auth_info.h │ │ ├── hdr_authorization.cpp │ │ ├── hdr_authorization.h │ │ ├── hdr_call_id.cpp │ │ ├── hdr_call_id.h │ │ ├── hdr_call_info.cpp │ │ ├── hdr_call_info.h │ │ ├── hdr_contact.cpp │ │ ├── hdr_contact.h │ │ ├── hdr_content_disp.cpp │ │ ├── hdr_content_disp.h │ │ ├── hdr_content_encoding.cpp │ │ ├── hdr_content_encoding.h │ │ ├── hdr_content_language.cpp │ │ ├── hdr_content_language.h │ │ ├── hdr_content_length.cpp │ │ ├── hdr_content_length.h │ │ ├── hdr_content_type.cpp │ │ ├── hdr_content_type.h │ │ ├── hdr_cseq.cpp │ │ ├── hdr_cseq.h │ │ ├── hdr_date.cpp │ │ ├── hdr_date.h │ │ ├── hdr_error_info.cpp │ │ ├── hdr_error_info.h │ │ ├── hdr_event.cpp │ │ ├── hdr_event.h │ │ ├── hdr_expires.cpp │ │ ├── hdr_expires.h │ │ ├── hdr_from.cpp │ │ ├── hdr_from.h │ │ ├── hdr_in_reply_to.cpp │ │ ├── hdr_in_reply_to.h │ │ ├── hdr_max_forwards.cpp │ │ ├── hdr_max_forwards.h │ │ ├── hdr_mime_version.cpp │ │ ├── hdr_mime_version.h │ │ ├── hdr_min_expires.cpp │ │ ├── hdr_min_expires.h │ │ ├── hdr_min_se.cpp │ │ ├── hdr_min_se.h │ │ ├── hdr_organization.cpp │ │ ├── hdr_organization.h │ │ ├── hdr_p_asserted_identity.cpp │ │ ├── hdr_p_asserted_identity.h │ │ ├── hdr_p_preferred_identity.cpp │ │ ├── hdr_p_preferred_identity.h │ │ ├── hdr_priority.cpp │ │ ├── hdr_priority.h │ │ ├── hdr_privacy.cpp │ │ ├── hdr_privacy.h │ │ ├── hdr_proxy_authenticate.cpp │ │ ├── hdr_proxy_authenticate.h │ │ ├── hdr_proxy_authorization.cpp │ │ ├── hdr_proxy_authorization.h │ │ ├── hdr_proxy_require.cpp │ │ ├── hdr_proxy_require.h │ │ ├── hdr_rack.cpp │ │ ├── hdr_rack.h │ │ ├── hdr_reason.cpp │ │ ├── hdr_reason.h │ │ ├── hdr_record_route.cpp │ │ ├── hdr_record_route.h │ │ ├── hdr_refer_sub.cpp │ │ ├── hdr_refer_sub.h │ │ ├── hdr_refer_to.cpp │ │ ├── hdr_refer_to.h │ │ ├── hdr_referred_by.cpp │ │ ├── hdr_referred_by.h │ │ ├── hdr_replaces.cpp │ │ ├── hdr_replaces.h │ │ ├── hdr_reply_to.cpp │ │ ├── hdr_reply_to.h │ │ ├── hdr_request_disposition.cpp │ │ ├── hdr_request_disposition.h │ │ ├── hdr_require.cpp │ │ ├── hdr_require.h │ │ ├── hdr_retry_after.cpp │ │ ├── hdr_retry_after.h │ │ ├── hdr_route.cpp │ │ ├── hdr_route.h │ │ ├── hdr_rseq.cpp │ │ ├── hdr_rseq.h │ │ ├── hdr_server.cpp │ │ ├── hdr_server.h │ │ ├── hdr_service_route.cpp │ │ ├── hdr_service_route.h │ │ ├── hdr_session_expires.cpp │ │ ├── hdr_session_expires.h │ │ ├── hdr_sip_etag.cpp │ │ ├── hdr_sip_etag.h │ │ ├── hdr_sip_if_match.cpp │ │ ├── hdr_sip_if_match.h │ │ ├── hdr_subject.cpp │ │ ├── hdr_subject.h │ │ ├── hdr_subscription_state.cpp │ │ ├── hdr_subscription_state.h │ │ ├── hdr_supported.cpp │ │ ├── hdr_supported.h │ │ ├── hdr_timestamp.cpp │ │ ├── hdr_timestamp.h │ │ ├── hdr_to.cpp │ │ ├── hdr_to.h │ │ ├── hdr_unsupported.cpp │ │ ├── hdr_unsupported.h │ │ ├── hdr_user_agent.cpp │ │ ├── hdr_user_agent.h │ │ ├── hdr_via.cpp │ │ ├── hdr_via.h │ │ ├── hdr_warning.cpp │ │ ├── hdr_warning.h │ │ ├── hdr_www_authenticate.cpp │ │ ├── hdr_www_authenticate.h │ │ ├── header.cpp │ │ ├── header.h │ │ ├── identity.cpp │ │ ├── identity.h │ │ ├── media_type.cpp │ │ ├── media_type.h │ │ ├── milenage.cpp │ │ ├── milenage.h │ │ ├── parameter.cpp │ │ ├── parameter.h │ │ ├── parse_ctrl.cpp │ │ ├── parse_ctrl.h │ │ ├── parser.yxx │ │ ├── request.cpp │ │ ├── request.h │ │ ├── response.cpp │ │ ├── response.h │ │ ├── rijndael.cpp │ │ ├── rijndael.h │ │ ├── route.cpp │ │ ├── route.h │ │ ├── scanner.lxx │ │ ├── sip_body.cpp │ │ ├── sip_body.h │ │ ├── sip_message.cpp │ │ └── sip_message.h │ ├── patterns/ │ │ ├── CMakeLists.txt │ │ ├── observer.cpp │ │ └── observer.h │ ├── phone.cpp │ ├── phone.h │ ├── phone_user.cpp │ ├── phone_user.h │ ├── presence/ │ │ ├── CMakeLists.txt │ │ ├── buddy.cpp │ │ ├── buddy.h │ │ ├── pidf_body.cpp │ │ ├── pidf_body.h │ │ ├── presence_dialog.cpp │ │ ├── presence_dialog.h │ │ ├── presence_epa.cpp │ │ ├── presence_epa.h │ │ ├── presence_state.cpp │ │ ├── presence_state.h │ │ ├── presence_subscription.cpp │ │ └── presence_subscription.h │ ├── prohibit_thread.cpp │ ├── prohibit_thread.h │ ├── protocol.h │ ├── redirect.cpp │ ├── redirect.h │ ├── sdp/ │ │ ├── CMakeLists.txt │ │ ├── sdp.cpp │ │ ├── sdp.h │ │ ├── sdp_parse_ctrl.cpp │ │ ├── sdp_parse_ctrl.h │ │ ├── sdp_parser.h │ │ ├── sdp_parser.yxx │ │ └── sdp_scanner.lxx │ ├── sender.cpp │ ├── sender.h │ ├── sequence_number.h │ ├── service.cpp │ ├── service.h │ ├── session.cpp │ ├── session.h │ ├── sockets/ │ │ ├── CMakeLists.txt │ │ ├── connection.cpp │ │ ├── connection.h │ │ ├── connection_table.cpp │ │ ├── connection_table.h │ │ ├── dnssrv.cpp │ │ ├── dnssrv.h │ │ ├── interfaces.cpp │ │ ├── interfaces.h │ │ ├── ipaddr.h │ │ ├── socket.cpp │ │ ├── socket.h │ │ ├── url.cpp │ │ └── url.h │ ├── stun/ │ │ ├── CMakeLists.txt │ │ ├── stun.cxx │ │ ├── stun.h │ │ ├── stun_transaction.cpp │ │ ├── stun_transaction.h │ │ ├── udp.cxx │ │ └── udp.h │ ├── sub_refer.cpp │ ├── sub_refer.h │ ├── subscription.cpp │ ├── subscription.h │ ├── subscription_dialog.cpp │ ├── subscription_dialog.h │ ├── sys_settings.cpp │ ├── sys_settings.h │ ├── threads/ │ │ ├── CMakeLists.txt │ │ ├── mutex.cpp │ │ ├── mutex.h │ │ ├── sema.cpp │ │ ├── sema.h │ │ ├── thread.cpp │ │ └── thread.h │ ├── timekeeper.cpp │ ├── timekeeper.h │ ├── transaction.cpp │ ├── transaction.h │ ├── transaction_layer.cpp │ ├── transaction_layer.h │ ├── transaction_mgr.cpp │ ├── transaction_mgr.h │ ├── translator.h │ ├── user.cpp │ ├── user.h │ ├── userintf.cpp │ ├── userintf.h │ ├── util.cpp │ ├── util.h │ └── utils/ │ ├── CMakeLists.txt │ ├── file_utils.cpp │ ├── file_utils.h │ ├── mime_database.cpp │ ├── mime_database.h │ ├── record_file.h │ └── record_file.hpp ├── twinkle.desktop.in ├── twinkle.spec.in └── twinkle_config.h.in