Я пишу программу на C в среде Linux (Debian-Lenny) и хотел бы, чтобы программа обновлялась, когда доступно обновление (программа получает уведомление, когда доступно новое обновление). Я ищу способ, которым программа может обновить себя.
Я думаю, что основная программа вызывает новую программу для обработки обновления. Программа обновления будет иметь (доступ) к исходному коду и получать информацию об обновлении об изменениях в исходном коде, что-то вроде этого:
edit1: line 20, remove column 5 to 20;
edit2: line25, remove column 4-7 then add "if(x>3){" from the column4
edit3: line 26, enter a new line and insert "x++;"
затем завершите основной процесс, перекомпилируйте исходный код, а затем замените новый двоичный файл старым.
или есть лучший (более простой) и стандартный способ реализовать возможность обновления программы?
Я использую программу для управления системой со встроенной платой Linux. Поэтому я не хочу, чтобы исходный код был доступен другому человеку (если система взломана или что-то в этом роде). Если лучший способ обновить программу — использовать исходный код, как вы предлагаете мне защитить исходный код? Если вы предложите мне зашифровать исходный код, какую функцию (Linux C) программа может использовать для шифрования и расшифровки исходного файла?