Comments (10)
Maybe we could use lex/yacc for config parsing?
from inadyn.
Yes, I was thinking about stealing and modifying http://github.com/troglobit/mrouted/blob/master/cfparse.y,
which is another project I maintain. Should be a cake walk :)
from inadyn.
Hi,
Anyone working on this?
from inadyn.
Yes, I'm actually working on this now (finally!) -- the current parser is however not based on lex/yacc, but a simple tokenizer. The idea is however to reduce the amount of command-line options and keep what's for the .conf file in the .conf file ...
from inadyn.
For some systems(for example like my OpenELEC media center system) command line options much easier I guess.
Like my XBMC add-on, very easy to parse options from add-on's option menu and execute inadyn directly with that options.
Example: https://github.com/queeup/service.inadyn/blob/frodo/service.py#L36
But at the end you will decide what is it better for your project.
from inadyn.
@queeup Hmm, yeah I guess there will be a few comments from disgruntled users on this. Nothing is set in stone yet and no code is yet available to present as an alternative to the current implementation.
In your case, however, it doesn't look like rocket science to rewrite the service.py plugin to create a tempfile to feed your settings to inadyn ... or am I missing something obvious?
from inadyn.
No you are not missing anything :) Yes thats what I am going to do if you are going to take out things from cli.
Really I am not against anything. Just share my thought. Do it what is it better for inadyn. I will find a way to adapt :)
from inadyn.
@queeup OK, just wondered if you for some reason perhaps didn't have any writeable temporary filesystem ... kinda differs a lot between various embedded systems. Thank you for being so kind!
from inadyn.
Progress: http://troglobit.com/blog/2014/02/23/weekend-hack-json-vs-conf/
iface = IFNAME
bind = IFNAME
cache-dir = DIR
period = SEC
forced-update = SEC
once = True
iterations = NUM
proxy-server = NAME[:PORT]
wildcard = True
fake-address = True
# For custom DDNS providers
checkip-url = URL
server-name = URL
# For known DDNS providers
system PROVIDER {
alias ...
username ...
password ...
ssl = True
}
from inadyn.
Mostly fixed now, as of 3f8c0b6. Still a lot of testing remains and there are a few options introduced late in the 1.x cycle that are still to be ported.
from inadyn.
Related Issues (20)
- Add [email protected] to list of preconfigured providers in the man page
- startup-delay in inadyn.conf HOT 8
- Docker appears to not have SSL (latest and v.2.11.0 tag) HOT 13
- dynv6 (IPv4) fails to update IP address and returns a "400 Bad Request" error HOT 6
- Regression in provider naming HOT 6
- daemon sending wrong/old IP-address on update HOT 7
- FreeDNS: is it asking for account API keys now? HOT 8
- dynv6 (IPv6) fails to update IP address and returns a "400 Bad Request" error HOT 3
- issue with starting console from portainer HOT 1
- (Optionally) disable fallback to http://ifconfig.me HOT 6
- Support for round-robin records (one hostname, multiple IP addresses) HOT 1
- Proposal: Add --show-status and extend cache to store more information about last update HOT 6
- Proposal: Allow plugins to skip nslookup HOT 2
- Desec fails to update IPv4 and IPv6 simultaneously and returns error HOT 11
- -
- Add Cpanel
- DNSExit.com present for updating DDNS no longer functions as of sometime after November 20th 2023. HOT 4
- Period not to find in logs HOT 3
- does not time out HOT 2
- [Feature request] Add logging level to logs
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from inadyn.