@george1421
I’ve done it !
The “old” fog.auto.reg is :
if [[ -f "/bin/fog.customhostname" ]]; then
. /bin/fog.customhostname
fi
if [[ -f /sys/firmware/acpi/tables/MSDM ]]; then
productKey=$(tail -c+57 /sys/firmware/acpi/tables/MSDM | base64)
fi
while [[ -z $res ]]; do
res=$(curl -Lks --data "host=${host_default_name}&sysserial=${sysserial}&sysuuid=${sysuuid}&mac=$mac&productKey=${productKey}" ${web}service/auto.register.php 2>/dev/null)
Here is the trick :
while [[ -z $res ]]; do
host=${host_default_name}
host=$(echo $host | base64)
res=$(curl -Lks --data "host=$host&sysserial=${sysserial}&sysuuid=${sysuuid}&mac=$mac&productKey=${productKey}" ${web}service/auto.register.php 2>/dev/null)
We have to convert to base64 and then send to the script. It works like a charm.
I suceeded when I inspected the fog.man.reg.fix Here is what helped me :
while [[ $res != "#!ok" ]]; do
if [[ $host_default_name != "" ]]; then
read -p " * Enter hostname for this computer [$host_default_name]: " host
else
read -p " * Enter hostname for this computer: " host
fi
host=${host:-$host_default_name}
if [[ ${#host} -gt 15 ]]; then
host=${host:0:15}
echo " | Truncated to 15 characters: $host"
usleep 2000000
fi
host=$(echo $host | base64)
res=$(curl -Lks --data "host=$host" ${web}service/hostnameloop.php 2>/dev/null)
[[ $res != "#!ok" ]] && echo "$res"
done
Those line
host=${host:-$host_default_name}
host=$(echo $host | base64)
res=$(curl -Lks --data "host=$host" ${web}service/hostnameloop.php 2>/dev/null)
Thank you very much for your help