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)
- Period not to find in logs HOT 3
- does not time out HOT 2
- [Feature request] Add logging level to logs
- inadyn stop period refresh after several fail HOT 1
- [Bug] `Error running 'INADYN_PROVIDER="[email protected]"` HOT 8
- FEATURE REQUEST: Add support to execute a bash script on IP address change (passing the new IP to the script) HOT 1
- never connects to APIs?
- Failure running Docker image? HOT 6
- Missing .conf file, and can not create a new one HOT 2
- ddns-server like username:[email protected] cant work HOT 2
- wrong ddns server for [email protected] HOT 2
- "Building from GIT" is broken? HOT 3
- Main process exited when get error response from DDNS server HOT 2
- pokbun API does not work, leaks secret key in debug logs HOT 2
- Caching issues (dual stack) and forced updates
- Variables for update of ipv6prefix and ipv6 on dynv6 HOT 12
- Compilation will fail with GCC-14 due -Wimplicit-function-declaration as error HOT 2
- API version used with dynu.com HOT 2
- inadyn[25670] <Error>: Zone 'my-domain.com' not found - Cloudflare HOT 3
- ttl defaults to 0 when not specified
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.