#!/usr/bin/haserl --upload-limit=20 --upload-dir=/tmp <%in p/common.cgi %> <% config_file=/etc/majestic.yaml config_file_fw=/rom/etc/majestic.yaml if [ "POST" = "$REQUEST_METHOD" ]; then case "$POST_action" in backup) echo "HTTP/1.0 200 OK Date: $(time_http) Server: $SERVER_SOFTWARE Content-type: text/plain Content-Disposition: attachment; filename=majestic.yaml Content-Length: $(stat -c%s $config_file) Cache-Control: no-store Pragma: no-cache " cat $config_file ;; patch) patch_file=/tmp/majestic.patch diff $config_file_fw $config_file >$patch_file echo "HTTP/1.0 200 OK Date: $(time_http) Server: $SERVER_SOFTWARE Content-type: text/plain Content-Disposition: attachment; filename=majestic.$(time_epoch).patch Content-Length: $(stat -c%s $patch_file) Cache-Control: no-store Pragma: no-cache " cat $patch_file rm $patch_file ;; reset) /usr/sbin/sysreset.sh -m redirect_back ;; restore) magicnum="23206d616a6573746963" file="$POST_mj_restore_file" file_name="$POST_mj_restore_file_name" file_path="$POST_mj_restore_file_path" error="" [ -z "$file_name" ] && error="Файл не найден! Вы не забыли загрузить?" [ ! -r "$file" ] && error="Невозможно прочитать загруженный файл!" [ "$(stat -c%s $file)" -gt "$maxsize" ] && error="Загруженный файл слишком большой! $(stat -c%s $file) > ${maxsize}." #[ "$magicnum" -ne "$(xxd -p -l 10 $file)" ] && error="Магический номер файла не совпадает. Вы загрузили неправильный файл? $(xxd -p -l 10 $file) != $magicnum" if [ -z "$error" ]; then # yaml-cli -i $POST_upfile -o /tmp/majestic.yaml # FIXME: sanitize mv $file_path /etc/majestic.yaml redirect_to $SCRIPT_NAME fi ;; esac fi %> <% page_title="Обслуживание Majestic" %> <%in p/header.cgi %>
Загрузите последний файл majestic.yaml, чтобы сохранить изменения, внесенные в конфигурацию по умолчанию.
Восстановите пользовательскую конфигурацию Majestic из сохраненной копии файла majestic.yaml.
Сравните свежий файл majestic.yaml с тем, что идет в комплекте с прошивкой.
Проверить измененияЭкспорт изменений, внесенных в majestic.yaml, в виде файла исправления.
Сбросьте конфигурацию Majestic в исходное состояние, которое поставляется с прошивкой.
<% button_mj_reset %> <% else %>Сбрасывать нечего. Последняя конфигурация Majestic не отличается от поставляемой с прошивкой.
<% fi %>