- 1
- 2
- 3
- 4
- 5
- 6
- 7
if (argc == 3)
snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[2]);
else if (argc >= 4)
{
snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[3], argv[2]);
// ...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+132
if (argc == 3)
snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[2]);
else if (argc >= 4)
{
snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[3], argv[2]);
// ...
}
Какой-то иксплойт, файл pscan2.c
Подозреваю, что когда-то имя файла зависело от `argv`, а потом кому-то надоело трахаться с кривыми именами фалов (которые неизбежно будут получаться при таком примитивном подходе) и они просто жестко прошили имя "scan.log" для всех случаев. А мертвые теперь аргументы или просто забыли вычистить, или сознательно оставили, на случай если в будущем захочется вернуться к прежнему варианту.
2. возможно имелось в виду, что код из эксплойта
3. еще раз стандарт
4...
Я подумал было, что вы действительно можете указать мне место в стандарте, где сказано "игнорируемые параметры функции являются лишними".
Впрочем этой дурацкой придирки не возникло бы, если бы вы в своем первом коменте взяли слово "лишние" в кавычки так-же, как сделали это во всех остальных комментариях к этому посту. Кавычки вы, как я погляжу, любите - вон сколько наставили! Ну неужели вам было сложно?
И да, это то, что я имел в виду, написав вам про стандарт.
дискардит все, что больше n-1. а вот на строку форматирования нифига не похоже.
А вот что Вам показалось "похоже", а что "не похоже" мало кому интересно. Читайте стандарт - там ясно английским по белому написано, что такое строка форматирования и как она обрабатывается. Строка "scan.log" является совершенно корректной строкой форматирования. А то, что такая строка форматирования выглядит странно в вышеприведенном контексте (с передаваемыми "лишними" аргументами) - так возможную причину возникновения такой ситуации я детально описал выше.
По существу замечания есть?
Ни разу не сталкивался. Или сталкивался но не обращал внимания.
Замечательно что на ГК сидят не только похапешники. Си Хайль!
Даёшь равноправие! Долой однопартийную систему! Си - в массы!