Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package belle-sip for openSUSE:Factory 
checked in at 2023-06-28 21:33:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/belle-sip (Old)
 and      /work/SRC/openSUSE:Factory/.belle-sip.new.13546 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "belle-sip"

Wed Jun 28 21:33:28 2023 rev:37 rq:1095733 version:5.2.73

Changes:
--------
--- /work/SRC/openSUSE:Factory/belle-sip/belle-sip.changes      2023-04-07 
18:17:24.376918686 +0200
+++ /work/SRC/openSUSE:Factory/.belle-sip.new.13546/belle-sip.changes   
2023-06-28 21:33:36.365947323 +0200
@@ -1,0 +2,5 @@
+Wed Jun 28 06:37:09 UTC 2023 - Paolo Stivanin <[email protected]>
+
+- Update to 5.2.73 (no changelog)
+
+-------------------------------------------------------------------

Old:
----
  belle-sip-5.2.49.tar.bz2

New:
----
  belle-sip-5.2.73.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ belle-sip.spec ++++++
--- /var/tmp/diff_new_pack.P3boto/_old  2023-06-28 21:33:38.449959627 +0200
+++ /var/tmp/diff_new_pack.P3boto/_new  2023-06-28 21:33:38.453959651 +0200
@@ -20,7 +20,7 @@
 %define soname  libbellesip
 %define sover   1
 Name:           belle-sip
-Version:        5.2.49
+Version:        5.2.73
 Release:        0
 Summary:        C object-oriented SIP Stack
 License:        GPL-3.0-or-later

++++++ belle-sip-5.2.49.tar.bz2 -> belle-sip-5.2.73.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/cmake/FindDNSSD.cmake 
new/belle-sip-5.2.73/cmake/FindDNSSD.cmake
--- old/belle-sip-5.2.49/cmake/FindDNSSD.cmake  2023-04-06 12:16:56.000000000 
+0200
+++ new/belle-sip-5.2.73/cmake/FindDNSSD.cmake  2023-06-14 06:55:32.000000000 
+0200
@@ -72,7 +72,7 @@
 
 find_path(_dnssd_INCLUDE_DIR dns_sd.h
   HINTS $ENV{DNSSD_ROOT} ${DNSSD_ROOT}
-  PATH_SUFFIXES include
+  PATH_SUFFIXES include include/avahi-compat-libdns_sd
   PATHS ${_dnssd_lib_paths}
   )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/belle_sip_internal.h 
new/belle-sip-5.2.73/src/belle_sip_internal.h
--- old/belle-sip-5.2.49/src/belle_sip_internal.h       2023-04-06 
12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/belle_sip_internal.h       2023-06-14 
06:55:32.000000000 +0200
@@ -909,6 +909,7 @@
 int belle_sip_dialog_handle_ack(belle_sip_dialog_t *obj, belle_sip_request_t 
*ack);
 void belle_sip_dialog_queue_client_transaction(belle_sip_dialog_t *dialog, 
belle_sip_client_transaction_t *tr);
 void belle_sip_dialog_stop_200Ok_retrans(belle_sip_dialog_t *obj);
+int belle_sip_dialog_establish_from_notify(belle_sip_dialog_t *obj, 
belle_sip_request_t *req);
 
 
 /*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/channel.c 
new/belle-sip-5.2.73/src/channel.c
--- old/belle-sip-5.2.49/src/channel.c  2023-04-06 12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/channel.c  2023-06-14 06:55:32.000000000 +0200
@@ -604,6 +604,11 @@
                                        belle_sip_error("Could not parse [%s], 
on channel [%p] skipping to [%s]",obj->input_stream.read_ptr
                                                                                
                                ,obj
                                                                                
                                ,end_of_message);
+                                       if (obj->input_stream.msg){
+                                               /* despite read_size is zero, 
belle_sip_message_parse_raw() might return an empty belle_sip_message_t */
+                                               
belle_sip_object_unref(obj->input_stream.msg);
+                                               obj->input_stream.msg = NULL;
+                                       }
                                        
obj->input_stream.read_ptr=end_of_message;
                                        
obj->input_stream.state=WAITING_MESSAGE_START;
                                        continue;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/dialog.c 
new/belle-sip-5.2.73/src/dialog.c
--- old/belle-sip-5.2.49/src/dialog.c   2023-04-06 12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/dialog.c   2023-06-14 06:55:32.000000000 +0200
@@ -226,6 +226,34 @@
        return BELLE_SIP_CONTINUE;
 }
 
+/*
+ * Special function to handle the case where a dialog is established by an 
incoming NOTIFY
+ * (received prior to the SUBSCRIBE 200 OK. See 
https://www.rfc-editor.org/rfc/rfc6665.html#section-4.4.1
+ */
+int belle_sip_dialog_establish_from_notify(belle_sip_dialog_t *obj, 
belle_sip_request_t *req){
+       belle_sip_header_contact_t *ct = 
belle_sip_message_get_header_by_type(req, belle_sip_header_contact_t);
+       belle_sip_header_from_t *from = 
belle_sip_message_get_header_by_type(req, belle_sip_header_from_t);
+       belle_sip_header_cseq_t *cseq = 
belle_sip_message_get_header_by_type(req, belle_sip_header_cseq_t);
+       const char *from_tag = belle_sip_header_from_get_tag(from);
+       const belle_sip_list_t *elem;
+
+       if (!ct) {
+               belle_sip_error("Missing contact header in request [%p], cannot 
set remote target for dialog [%p]", req, obj);
+               return -1;
+       }
+
+       obj->route_set = belle_sip_list_free_with_data(obj->route_set, 
belle_sip_object_unref);
+       for(elem = 
belle_sip_message_get_headers((belle_sip_message_t*)req,BELLE_SIP_RECORD_ROUTE);
 elem != NULL; elem = elem->next){
+               obj->route_set = 
belle_sip_list_append(obj->route_set,belle_sip_object_ref(belle_sip_header_route_create(
+                                                                               
                (belle_sip_header_address_t*)elem->data)));
+       }
+       obj->remote_cseq = belle_sip_header_cseq_get_seq_number(cseq);
+       obj->remote_target = 
(belle_sip_header_address_t*)belle_sip_object_ref(ct);
+       obj->remote_tag = belle_sip_strdup(from_tag);
+       set_state(obj, BELLE_SIP_DIALOG_CONFIRMED);
+       return 0;
+}
+
 int belle_sip_dialog_establish_full(belle_sip_dialog_t *obj, 
belle_sip_request_t *req, belle_sip_response_t *resp){
        belle_sip_header_contact_t 
*ct=belle_sip_message_get_header_by_type(resp,belle_sip_header_contact_t);
        belle_sip_header_to_t 
*to=belle_sip_message_get_header_by_type(resp,belle_sip_header_to_t);
@@ -658,7 +686,7 @@
                        }
                        break;
                case BELLE_SIP_DIALOG_CONFIRMED:
-                       if (code==481 && (is_invite || is_subscribe)) {
+                       if (code==481 && (is_invite || is_subscribe || 
is_notify)) {
                                /*Dialog is terminated in such case*/
                                delete_dialog=TRUE;
                                break;
@@ -1278,30 +1306,11 @@
    */
 
 int belle_sip_dialog_can_accept_request(const belle_sip_dialog_t *dialog, 
belle_sip_request_t *req) {
-       const char *method = belle_sip_request_get_method(req);
        if (belle_sip_dialog_request_pending(dialog)){
-               const char* last_transaction_request;
-               if (strcasecmp(method,"BYE")==0)
-                       return TRUE; /*don't reject a BYE*/
-
-               last_transaction_request = 
belle_sip_request_get_method(belle_sip_transaction_get_request(dialog->last_transaction));
-               if 
(BELLE_SIP_OBJECT_IS_INSTANCE_OF(dialog->last_transaction,belle_sip_client_transaction_t)){
-                       if (strcmp(last_transaction_request,"SUBSCRIBE")==0 && 
strcmp(method,"NOTIFY")==0){
-                               /*stupid as it may sound, you have to accept a 
NOTIFY for a SUBSCRIBE for which no answer is received yet.*/
-                               return TRUE;
-                       }else if (strcmp(last_transaction_request, "NOTIFY") == 
0 && strcmp(method, "SUBSCRIBE") == 0){
-                               belle_sip_header_expires_t *expire = 
belle_sip_message_get_header_by_type((belle_sip_message_t*)req, 
belle_sip_header_expires_t);
-                               if (expire && 
belle_sip_header_expires_get_expires(expire) == 0){
-                                       /* Accept to receive an unSUBSCRIBE 
even if we have an outgoing pending NOTIFY */
-                                       return TRUE;
-                               }
-                       }
-               }
-               if (strcmp(last_transaction_request,"INVITE")==0 && 
(strcmp(method,"PRACK")==0 || strcmp(method,"UPDATE")==0)){
-                       /*PRACK /UPDATE needs to be sent or received during 
reINVITEs.*/
-                       return TRUE;
-               }
-               return FALSE;
+               const char *method = belle_sip_request_get_method(req);
+               const char* last_transaction_request = 
belle_sip_request_get_method(belle_sip_transaction_get_request(dialog->last_transaction));
+               // Back to back INVITES must be processed in order and one at a 
time
+               return !((strcmp(last_transaction_request,"INVITE")==0) && 
(strcmp(method,"INVITE")==0));
        } else {
                return TRUE;
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/dns/dns.c 
new/belle-sip-5.2.73/src/dns/dns.c
--- old/belle-sip-5.2.49/src/dns/dns.c  2023-04-06 12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/dns/dns.c  2023-06-14 06:55:32.000000000 +0200
@@ -184,6 +184,7 @@
 #pragma clang diagnostic push
 #pragma clang diagnostic ignored "-Wunused-parameter"
 #pragma clang diagnostic ignored "-Wmissing-field-initializers"
+#pragma clang diagnostic ignored "-Wdeprecated-non-prototype"
 #elif DNS_GNUC_PREREQ(4,6,0)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wunused-parameter"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/message.c 
new/belle-sip-5.2.73/src/message.c
--- old/belle-sip-5.2.49/src/message.c  2023-04-06 12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/message.c  2023-06-14 06:55:32.000000000 +0200
@@ -123,7 +123,7 @@
        return belle_sip_message_parse_raw(value,strlen(value),&message_length);
 }
 
-belle_sip_message_t* belle_sip_message_parse_raw (const char* buff, size_t 
buff_length,size_t* message_length ) { \
+belle_sip_message_t* belle_sip_message_parse_raw (const char* buff, size_t 
buff_length, size_t* message_length ) {
        pANTLR3_INPUT_STREAM           input;
        pbelle_sip_messageLexer               lex;
        pANTLR3_COMMON_TOKEN_STREAM    tokens;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/belle-sip-5.2.49/src/provider.c 
new/belle-sip-5.2.73/src/provider.c
--- old/belle-sip-5.2.49/src/provider.c 2023-04-06 12:16:56.000000000 +0200
+++ new/belle-sip-5.2.73/src/provider.c 2023-06-14 06:55:32.000000000 +0200
@@ -168,7 +168,8 @@
                        belle_sip_client_transaction_t *sub = 
belle_sip_provider_find_matching_pending_subscribe_client_transaction_from_notify_req(prov,req);
                        if (sub) {
                                belle_sip_message("Found matching subscribe for 
NOTIFY [%p], creating dialog",req);
-                               
ev.dialog=belle_sip_provider_create_dialog_internal(prov,BELLE_SIP_TRANSACTION(sub),FALSE);
+                               ev.dialog = 
belle_sip_provider_create_dialog_internal(prov,BELLE_SIP_TRANSACTION(sub),FALSE);
+                               if (ev.dialog) 
belle_sip_dialog_establish_from_notify(ev.dialog, req);
                        }
                }
 

++++++ set_current_version.patch ++++++
--- /var/tmp/diff_new_pack.P3boto/_old  2023-06-28 21:33:40.017968885 +0200
+++ /var/tmp/diff_new_pack.P3boto/_new  2023-06-28 21:33:40.017968885 +0200
@@ -5,7 +5,7 @@
  endif()
  
 -project(belle-sip VERSION 5.2.0 LANGUAGES C CXX)
-+project(belle-sip VERSION 5.2.49 LANGUAGES C CXX)
++project(belle-sip VERSION 5.2.73 LANGUAGES C CXX)
  
  set(PACKAGE "${PROJECT_NAME}")
  set(PACKAGE_NAME "${PROJECT_NAME}")

Reply via email to