|
|
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Проблема такова: Пишу простой smtp клиент на Си(не++) в Linux и нужно айпишник smtp сервера узнать. Для этого надо в MX записи это прочесть. Но какой функцией не могу найти. Функция gethostbyname() дает айпишники из А записи, но это не то что нужно. Может кто сталкиваля и знает как это решить? Под винду решений полно нашел, а вот под Линукс... Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 17:21:07 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
MoiseyЗдравствуйте. Проблема такова: Пишу простой smtp клиент на Си(не++) в Linux и нужно айпишник smtp сервера узнать. Для этого надо в MX записи это прочесть. Но какой функцией не могу найти. Функция gethostbyname() дает айпишники из А записи, но это не то что нужно. Может кто сталкиваля и знает как это решить? Под винду решений полно нашел, а вот под Линукс... Спасибо. Запросом к DNS-серверу ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 17:42:30 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
Вот нет случайно готовой функции в Си чтобы получить IP адрес smtp сервера зная лишь имя, например: gmail.com, mail.ru. Если нет, то как запрос делать к ДНС серверу чтобы получить этот IP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 17:51:59 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
Думаю что в исходниках nslookup есть то, что нужно автору. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 17:58:19 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
Тогда сразу вопрос где достать исходники эти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 18:00:30 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
Можно еще в какон нибудь Net::DNS от Perl-а пошукать так такие вещи как правило на Си писаны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 18:05:50 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
MoiseyТогда сразу вопрос где достать исходники эти? А хрен его знает. Но думаю, что в исходниках Линукс должно быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 18:11:23 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
MoiseyЗдравствуйте. Проблема такова: Пишу простой smtp клиент на Си(не++) в Linux и нужно айпишник smtp сервера узнать. Для этого надо в MX записи это прочесть. Но какой функцией не могу найти. Функция gethostbyname() дает айпишники из А записи, но это не то что нужно. Может кто сталкиваля и знает как это решить? Под винду решений полно нашел, а вот под Линукс... Спасибо. Сам не пробовал,но, вроде бы, Вам стоит посмотреть "adns":rpm -qvi -p adns* Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2009, 23:41:46 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
MoiseyВот нет случайно готовой функции в Си чтобы получить IP адрес smtp сервера зная лишь имя, например: gmail.com, mail.ru. Если нет, то как запрос делать к ДНС серверу чтобы получить этот IP. man 3 resolver man res_search int res_search(const char *dname, int class, int type, unsigned char *answer, int anslen); err = res_search (domain, C_IN, T_MX, &answer, sizeof(answer)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2009, 12:53:48 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
ЁшMoiseyВот нет случайно готовой функции в Си чтобы получить IP адрес smtp сервера зная лишь имя, например: gmail.com, mail.ru. Если нет, то как запрос делать к ДНС серверу чтобы получить этот IP. man 3 resolver man res_search int res_search(const char *dname, int class, int type, unsigned char *answer, int anslen); err = res_search (domain, C_IN, T_MX, &answer, sizeof(answer)); Похоже то что нужно, только вот answer что-то не понятное в себе содержит после выполнения функции. Не знаете что там должно быть и как все таки IP получить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2009, 06:46:28 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2009, 09:17:03 |
|
||
|
Прочитать MX record через Си в UNIX среде
|
|||
|---|---|---|---|
|
#18+
MoiseyЁшMoiseyВот нет случайно готовой функции в Си чтобы получить IP адрес smtp сервера зная лишь имя, например: gmail.com, mail.ru. Если нет, то как запрос делать к ДНС серверу чтобы получить этот IP. man 3 resolver man res_search int res_search(const char *dname, int class, int type, unsigned char *answer, int anslen); err = res_search (domain, C_IN, T_MX, &answer, sizeof(answer)); Похоже то что нужно, только вот answer что-то не понятное в себе содержит после выполнения функции. Не знаете что там должно быть и как все таки IP получить?думаю что answer содержит ответ DNS сервера в бинарном формате описанном в RFC на DNS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2009, 09:19:41 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36053059&tid=1344400]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 504ms |

| 0 / 0 |
