Исправления в h323
Сообщений: 24
|
Исправления в h323
Сейчас проводится исправление ошибок в драйвере H323. Если кому интересно, надо сделать следующее
1. Удалить все pwlib и openh323 и установить свежие pwlib_v1_9_0 openh323_v1_17_1
Ставить так:
./configure
make clean
make opt
make install
2. Установить * из CVS HEAD
3. Следить за патчами в http://bugs.digium.com/view_all_bug_page.php?page_number=1
Я делаю #4099, пока с другими патчами свой не свел. И к томуже мой патч реализован не полностью.
В ближайшее время постараюсь патч доделать, когда его включат в CVS HEAD пока сказать не смогу.
Суть моего патча
1. Section type=friend интерпретировалась как type=user. Должна интерпретироваться как user так и peer.
2. In section type=user неработал параметр dfmfmode =...
3. In type=peer некорректно работал параметр disallow =...
4. В некоторых частях кода игнорировался параметр dtmfmode =... из секции [general], бралось значение rfc2833.
Если у кого есть заинтересованность - заходите на #asteriskru
|
Откуда: Москва
Сообщений: 3421
|
Re: Исправления в h323
Я категорически против make install! Никогда не делайте make install!
Достаточно переписать две либы и все. При сборке ищутся пути ~/pwlib и ~/openh323. Потом mkdir ~/lib, export LD_LIBRARY_PATH=~/lib.
[root@pbx root]# ls lib
libh323_linux_x86_r.so.1.12.2 libpt_linux_x86_r.so.1.5.2
[root@pbx root]#
[root@pbx root]# ldd /usr/lib/asterisk/modules/chan_h323.so
libdl.so.2 => /lib/libdl.so.2 (0x40035000)
libpt_linux_x86_r.so.1.5.2 => /root/lib/libpt_linux_x86_r.so.1.5.2 (0x40039000)
libh323_linux_x86_r.so.1.12.2 => /root/lib/libh323_linux_x86_r.so.1.12.2 (0x40304000)
libcrypto.so.4 => /lib/libcrypto.so.4 (0x40b91000)
libssl.so.4 => /lib/libssl.so.4 (0x40c82000)
libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40cb7000)
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40cd8000)
liblber.so.2 => /usr/lib/liblber.so.2 (0x40ce6000)
libldap.so.2 => /usr/lib/libldap.so.2 (0x40cf1000)
libldap_r.so.2 => /usr/lib/libldap_r.so.2 (0x40d1c000)
libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x40d4a000)
libresolv.so.2 => /lib/libresolv.so.2 (0x40dc3000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40dd5000)
libm.so.6 => /lib/tls/libm.so.6 (0x40e88000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40eaa000)
libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x40eb2000)
libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x40ec5000)
libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x40f24000)
libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3 (0x40f26000)
libz.so.1 => /usr/lib/libz.so.1 (0x40f36000)
libsasl.so.7 => /usr/lib/libsasl.so.7 (0x40f44000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40f4f000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x4102f000)
libgdbm.so.2 => /usr/lib/libgdbm.so.2 (0x4103d000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x41044000)
libpam.so.0 => /lib/libpam.so.0 (0x41071000)
Сумбурно так, но надеюсь понятно :))
Так как все чисто, собирается как h323, так и oh323 и можно быстро переключаться между модулями.
P.S. Поглядите теперь на chan_sip:
[root@pbx root]# ldd /usr/lib/asterisk/modules/chan_sip.so
libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
[root@pbx root]#
Почувствуйте разницу
|
Сообщений: 24
|
Re: Исправления в h323
Никаких oh323 мне не нужно, я пробовал НЕ делать make install и получал кучу гемороя, зачем?
У меня все прекрасно стоит и работает с make install :)
Кстати я последнюю фичу дописал
5. В секции type=user не работали (dis)allow = ...
Это исправлено. Но поверх патча dead3
|
Сообщений: 56
|
Re: Исправления в h323
Я так понимаю, что ты уже закончил с патчем. Может опубликуешь, не забыв прокомментировать. ;)
Я без притензий, просто опубликованной в данный момент информации явно мало.
Мне например так и не удалось выяснить, что есть патч dead3
|
Сообщений: 56
|
Re: Исправления в h323
Все разобрался, спасибо за помощь.
Попробую родить простую и понятную инструкцию, по данному вопросу.
|
Откуда: Москва
Сообщений: 3421
|
Re: Исправления в h323
я пробовал НЕ делать make install и получал кучу гемороя
Это какого же? Dynamic library not found?
Нет никакого гемороя!! А после make install у тебя header файлы прописываются в стандартных путях поиска и либы тоже. После этого никакой другой версии openh323/pwlib не собрать! Если тебе и не надо и тебе все равно на бардак в системе, делай make install.
P.S. Погоняй свой патчик плиз call генератором, а?
CallGen323 (на всякий случай - http://www.openh323.org/code.html )
|
Сообщений: 24
|
Re: Исправления в h323
У меня нет бардака в системе, у меня установлена _одна_единственная_онаже_самая_последняя_ версия pwlib и openh323
Гонять call генератором невижу смысла, мой патч простой. Если и будут проблемы - то в реализации dead3.
Полную доку написать... а что собственно непонятно? Как патч накладывать или что он дает с точке зрения пользователя? Если второе, то вот:
sample h323.conf
...
[flot-phone]
type=friend ; type=user and type=peer (only with my patch)
host=10.0.4.252
disallow=all ; for user & peer (only with my patch)
allow=g729 ; for user & peer (only with my patch)
dtmfmode=rfc2833 ; for user & peer (only with my patch)
context=prov
...
Если хоть 1 параметр при входящем и исходящем вызовах не совпадают (странно, но вдруг так надо), то надо использовать 2 объявления
[flot-phone]
type=user
...
[flot-phone]
type=peer
...
|
Сообщений: 24
|
Re: Исправления в h323
Так. Появился ast-h323-dead3a.diff - #3967
Можно качать CVS HEAD, ставить dead3a и поверх мой патч.
|
Откуда: UK, London
Сообщений: 34
|
Re: Исправления в h323
так,
вопрос по г723...
вот проблема:
https://skylab.inaccessnetworks.com/mantis/view.php?id=15&nbn=16
итак с патчем в ох323 проблема частично решаеться.
а как дела в х323?
и особо меня фаст/слоу старт и х245 туннелинг и интересуют...
расскажите плиз..
|
Откуда: Москва
Сообщений: 3421
|
Re: Исправления в h323
У кого какие "рабочие" варианты версий h323 работают?
Из-за новых фич приходится работать с CVS, так уже досталт глюки и баги и куча патчей!
|
|