From 9cbf6b4b88f01e4d3faa0196b1abd31f33928ceb Mon Sep 17 00:00:00 2001 From: Christian Baer Date: Wed, 26 Nov 2025 19:58:49 +0100 Subject: [PATCH] Changed xpath of domain ID to "string" --- CHANGELOG.md | 31 ++++++++++++++++++++++++++++--- nsupdate.sh | 2 +- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d399155..1396c35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,9 +4,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). +## 2025-11-26 + +### Changed + +- Changed xpath of domain ID because INWX changed data type from "int" to "string". + ## 2024-06-05 ### Added + - Added Gitea workflow for building docker images ### Changed @@ -16,18 +23,21 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## 2023-11-06 ### Added + - Added jq to Docker image (for processing json) ## 2022-12-14 ### Added + - Added Dockerfile - Added docker-compose.yml ## 2022-10-18 ### Changed -- Completly rewritten. nsupdate is now a POSIX compliant /bin/sh script 👍🏻 + +- Completely rewritten. nsupdate is now a POSIX compliant /bin/sh script 👍🏻 - Backwards compatibility should be given (please test and report bugs!). - If using the xmmlint method, now also the IP for a record is retrieved this way - WAN IP now is only checked once per session instead of every time a new config is processed. @@ -35,25 +45,30 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - The code is now structured in functions which makes it more maintainable and modular. ### Removed + - Avoid using awk and get rid of dependency ## 2021-12-11 ### Added + - Added the possibility to retrieve the WAN IP by a shell command (e.g. SSHing into your router and get the IP of the WAN interface) ## 2020-07-03 ### Changed + - Rearranged config.sample - Updated Readme ### Added + - Getting the Domain-Record-ID via XML-RPC API ## 2020-05-11 ### Changed + - Updated Readme with some hints - Updated config.sample with a hint for TTL @@ -66,31 +81,38 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## 2019-12-20 ### Fixed + - Fixed DomRobot XML-RPC API syntax ### Added + - Added some more documentation ## 2015-07-22 ### Changed + - Changed the way how the existence of config files is checked - Updated the sample config file to reflect new options from the last updates ### Added + - The script is reported to work in csh and sh too ## 2015-06-30 ### Fixed + - Fixed the check for config files. Can now handle more than one file ### Changed + - Changed warning for missing config files ## 2015-01-12 ### Added + - Added checks for needed commands - Added checks for existing config file - Added requirements to README.md @@ -98,17 +120,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## 2014-02-21 ### Added + - Added support for IPv6 - Added support for config files ## 2014-01-02 ### Changed + - Changed default IP check site to ip.dblx.io - Renamed _$HOSTNAME_ to _$DOMAIN_ to work around potential conflicts with _$HOSTNAME_ that's set by the host itself ### Added -- Added a switch to use _drill_ instead of _nslookup_ because FreeBSD 10 switched from _bind_ to _unbound_ + +- Added a switch to use _drill_ instead of _nslookup_ because FreeBSD 10 switched from _bind_ to _unbound_ ## 2014-01-06 @@ -118,4 +143,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## 2013-07-12 -- First commit \ No newline at end of file +- First commit diff --git a/nsupdate.sh b/nsupdate.sh index a4eae34..690d629 100755 --- a/nsupdate.sh +++ b/nsupdate.sh @@ -85,7 +85,7 @@ init () { inwx_api="https://api.domrobot.com/xmlrpc/" inwx_api_xpath_ip='string(/methodResponse/params/param/value/struct/member[name="resData"]/value/struct/member[name="record"]/value/array/data/value/struct/member[name="content"]/value/string)' - inwx_api_xpath_id='string(/methodResponse/params/param/value/struct/member[name="resData"]/value/struct/member[name="record"]/value/array/data/value/struct/member[name="id"]/value/int)' + inwx_api_xpath_id='string(/methodResponse/params/param/value/struct/member[name="resData"]/value/struct/member[name="record"]/value/array/data/value/struct/member[name="id"]/value/string)' inwx_nameserver="ns.inwx.de" ip_check_site="${NSUPDATE_IP_CHECK_SITE:-https://api64.ipify.org}"