Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Cетевые протоколы и технологии

Cетевые протоколы и технологии TCP/IP стек

Ответ
 
Опции темы Опции просмотра
Старый 19.09.2020, 20:02   #1
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,577
Вес репутации: 4968/121
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?
Т.е. как есть еще и с энтерпрайзом. Мне обычно надо было организовать опрос пары-тройки OID, причем в качестве клиента. Т.е. вовсе не надо было разводить вот это вот всё от и до.
Возникла необходимость организовать исключительно энтерпрайз с таблицами, сервером.
Тут уже лучше прикручивать либу. 1.4.1 не содержит v2c. В 2.0.2 оно уже есть, но описание еще более скудное.
ampersant вне форума   Ответить с цитированием
Старый 26.09.2020, 22:14   #2
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,577
Вес репутации: 4968/121
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

показалось, что вот тут проще в сто раз
https://github.com/kfarr3/lwip-snmp

Но...
вот так из LwIP 2.0.2
Код:
void
snmp_asn1_enc_length_cnt(u16_t length, u8_t *octets_needed)
{
  if (length < 0x80U) {
    *octets_needed = 1;
  } else if (length < 0x100U) {
    *octets_needed = 2;
  } else {
    *octets_needed = 3;
  }
}
А теперь тоже самое у kfarr3
Код:
{                           // calculate the number of bytes required to encode a length
                           if      (length<=127     ) return 1;
                           else if (length< 255     ) return 2;
                           else if (length< 65535   ) return 3;
                           else if (length< 16777215) return 4;
                           else                       return 5;
                       }
это у него в файле asn.1.c

наткнулся чисто случайно. а сколько еще сюрпризов не обнаружил... Хоть сам с нуля царапай.
ampersant вне форума   Ответить с цитированием
Старый 27.09.2020, 22:43   #3
pal1222@yandex.ru
Senior Member
 
Регистрация: 30.09.2008
Сообщений: 1,606
Вес репутации: 3789/98
pal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond repute
По умолчанию Re: кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

Цитата:
Сообщение от ampersant Посмотреть сообщение
показалось, что вот тут проще в сто раз
https://github.com/kfarr3/lwip-snmp

Но...
вот так из LwIP 2.0.2
Код:
void
snmp_asn1_enc_length_cnt(u16_t length, u8_t *octets_needed)
{
  if (length < 0x80U) {
    *octets_needed = 1;
  } else if (length < 0x100U) {
    *octets_needed = 2;
  } else {
    *octets_needed = 3;
  }
}
А теперь тоже самое у kfarr3
Код:
{                           // calculate the number of bytes required to encode a length
                           if      (length<=127     ) return 1;
                           else if (length< 255     ) return 2;
                           else if (length< 65535   ) return 3;
                           else if (length< 16777215) return 4;
                           else                       return 5;
                       }
это у него в файле asn.1.c

наткнулся чисто случайно. а сколько еще сюрпризов не обнаружил... Хоть сам с нуля царапай.
А "с нуля" иногда проще... Ноу нейм ник стьюдент на гитхабе (а кто ещё будет этой хернёй заниматься ) озабоченный в основном "повторным использованием кода" те такого наваяет - что береги глаза Кстати "kfarr3", похоже копипаст... эти два фрагмента демонстрируют строго противоположные стили программирования. Либо же я нихрена не понял, но *octets_needed = 3 ... подразумевает, что что под это непонятное дело нужно, зачем-то, три октета, а " return 5;" это как в древнем анекдоте:
- !!! ПРИБОРЫ !!!! ???
- пятднадцать
- !!! ЧТОБЛЯДЬПЯТНАДЦАТЬ !!! ???
- а что приборы ?
pal1222@yandex.ru вне форума   Ответить с цитированием
Старый 28.09.2020, 04:12   #4
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,577
Вес репутации: 4968/121
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

В обоих примерах вычисляется сколько надо байт для указания счётчика в кодировке asn1 во втором случае получился перл 0x00 0xff - первый 0 лишний, только следующее значение требует 2 байта. Длина длины блин в asn постоянно вычисляется
ampersant вне форума   Ответить с цитированием
Старый 11.10.2020, 21:06   #5
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,577
Вес репутации: 4968/121
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

Цитата:
Сообщение от pal1222@yandex.ru Посмотреть сообщение
А "с нуля" иногда проще... Ноу нейм ник стьюдент на гитхабе (а кто ещё будет этой хернёй заниматься ) озабоченный в основном "повторным использованием кода" те такого наваяет - что береги глаза Кстати "kfarr3", похоже копипаст... эти два фрагмента демонстрируют строго противоположные стили программирования. Либо же я нихрена не понял, но *octets_needed = 3 ... подразумевает, что что под это непонятное дело нужно, зачем-то, три октета, а " return 5;" это как в древнем анекдоте:
- !!! ПРИБОРЫ !!!! ???
- пятднадцать
- !!! ЧТОБЛЯДЬПЯТНАДЦАТЬ !!! ???
- а что приборы ?
так и вышло. Свободным временем двигаю самопал, который точно так же будет никому не нужен и не понятен. Да еще и урезан в диагностике, т.е. пока все штатно - то ответы штатные, Если запросы косячные- ответы будут не в стандарте. Лень вылизывать - не хрен спрашивать не пойми что
ampersant вне форума   Ответить с цитированием
Старый 12.10.2020, 23:23   #6
pal1222@yandex.ru
Senior Member
 
Регистрация: 30.09.2008
Сообщений: 1,606
Вес репутации: 3789/98
pal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond reputepal1222@yandex.ru has a reputation beyond repute
По умолчанию Re: кто нибудь прикручивал LwIP 2.0.2 SNMP по честному?

Цитата:
Сообщение от ampersant Посмотреть сообщение
так и вышло. Свободным временем двигаю самопал, который точно так же будет никому не нужен и не понятен. Да еще и урезан в диагностике, т.е. пока все штатно - то ответы штатные, Если запросы косячные- ответы будут не в стандарте. Лень вылизывать - не хрен спрашивать не пойми что
И это мудро на самом деле В лучшем случае, твой развернутый ответ попадет прямиком в "message" к юзеру - тот обидится. А пейсатель всё равно пойдет отрабатывать по ветке "error" сценарий "потеря соединения". Я довольно долго на такой случай редиректил сразу на pornohub, а когда сообразил, что долбит тебя с вероятностью %95 скрипт... прицепил что-то вроде https://imgpng.ru/download/67231 , но потом контора связалась с Родиной, там в основном нервные студенты... руководство попросило перестать хулиганить.
keep-alive туда, ресет у себя и пусть 6 минут ждет таймаута TCP
pal1222@yandex.ru вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SNMP из либы микрочипа кто нибудь пользовал? IgorV Cетевые протоколы и технологии 4 24.03.2012 21:50
Имитатор DS18B20 Filya44 Вопросы начинающих 14 12.03.2012 17:39


Часовой пояс GMT +3, время: 09:40.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot