nekitmilk_my_dns #11

Merged
serafim merged 6 commits from nekitmilk_my_dns into dev 2025-04-03 17:40:48 +03:00
Collaborator
No description provided.
nekitmilk added 2 commits 2025-04-03 02:55:30 +03:00
serafim requested changes 2025-04-03 11:50:48 +03:00
Dismissed
serafim left a comment
Owner

Больше комментариев, один оператор, один комментарий в т.ч. вызовы (в идеале)

Больше комментариев, один оператор, один комментарий в т.ч. вызовы (в идеале)
src/DosAtk.cpp Outdated
@ -9,6 +9,8 @@
#include <net/if.h> // Определение констант сетевых интерфейсов (IFNAMSIZ)
#include <sys/ioctl.h> // Управление сокетами и интерфейсами (ioctl)
#include <fcntl.h> // Флаги файловых дескрипторов (fcntl)
#include <curl/curl.h>
Owner

Добавить коменты к либам

Добавить коменты к либам
serafim marked this conversation as resolved
src/DosAtk.cpp Outdated
@ -405,2 +407,4 @@
}
using json = nlohmann::json;
Owner

Давай без этого и просто на местах использования контекст резолвить

Давай без этого и просто на местах использования контекст резолвить
serafim marked this conversation as resolved
src/DosAtk.cpp Outdated
@ -410,0 +418,4 @@
// -4002 - ошибка запроса CURL
// -4003 - ошибка парсинга JSON
status = 0;
Owner

Нужно сделать две секции

// === Объявления ===
int a;
int b;

// === Инициализация ===
a = 0;
b = ;

И в них поместить все переменные из процедуры

Нужно сделать две секции ``` // === Объявления === int a; int b; // === Инициализация === a = 0; b = ; ``` И в них поместить все переменные из процедуры
serafim marked this conversation as resolved
src/DosAtk.cpp Outdated
@ -411,0 +430,4 @@
// Инициализируем curl
curl = curl_easy_init();
if (!curl) {
status = -4001;
Owner

return наверное нужен

return наверное нужен
src/DosAtk.cpp Outdated
@ -411,0 +444,4 @@
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); // Проверка SSL
// Устанавливаем заголовок
headers = curl_slist_append(headers, "accept: application/dns-json");
Owner

Можно в инициализацию двинуть

Можно в инициализацию двинуть
src/DosAtk.cpp Outdated
@ -411,0 +450,4 @@
// Выполняем запрос
res = curl_easy_perform(curl);
if (res != CURLE_OK) {
status = -4002;
Owner

return

return
src/DosAtk.cpp Outdated
@ -411,0 +454,4 @@
} else {
// Парсим JSON и извлекаем IP
try {
auto json_data = json::parse(response);
Owner

auto ни-ни
эту переменную тоже объявить в соответствующей секции

auto ни-ни эту переменную тоже объявить в соответствующей секции
src/DosAtk.cpp Outdated
@ -411,0 +458,4 @@
if (json_data.contains("Answer")) {
for (const auto& record : json_data["Answer"]) {
if (record["type"] == 1) { // A-запись (IPv4)
ip = record["data"].get<std::string>();
Owner

Наверное перед концом функции нужна проверка того, что всё это распарсилось и в ip есть валидный ip

Наверное перед концом функции нужна проверка того, что всё это распарсилось и в ip есть валидный ip
src/DosAtk.cpp Outdated
@ -411,0 +464,4 @@
}
}
} catch (const std::exception& e) {
status = -4003;
Owner

return?

return?
src/DosAtk.cpp Outdated
@ -411,0 +467,4 @@
status = -4003;
}
}
Owner

Если всё ок, поставь статус, который по схеме и main нужен, чтобы продолжать работать

Если всё ок, поставь статус, который по схеме и main нужен, чтобы продолжать работать
src/DosAtk.cpp Outdated
@ -412,2 +476,4 @@
}
// Callback для записи ответа от сервера
size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* output) {
Owner

А её нельзя определить внутри процедуры?

А её нельзя определить внутри процедуры?
nekitmilk added 1 commit 2025-04-03 15:54:02 +03:00
nekitmilk added 1 commit 2025-04-03 16:05:48 +03:00
serafim added 1 commit 2025-04-03 16:18:55 +03:00
serafim added 1 commit 2025-04-03 17:39:40 +03:00
Owner

Похуй

Похуй
serafim approved these changes 2025-04-03 17:40:06 +03:00
serafim merged commit 27d94f1199 into dev 2025-04-03 17:40:48 +03:00
serafim deleted branch nekitmilk_my_dns 2025-04-03 17:40:48 +03:00
serafim referenced this issue from a commit 2025-04-03 17:40:49 +03:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: serafim/dos#11
No description provided.