Aaron Piotrowski
4e4d6e9f81
Unload server when fwrite fails
...
Ignore errors from fwrite caused by disconnected sockets and immediately unload the server.
2017-03-02 16:38:11 -06:00
Niklas Keller
2b6925f166
Automatically convert IPs to ARPA domain
2017-02-05 23:17:40 +01:00
Niklas Keller
45ab9b512b
Search for DhcpNameServer in interfaces on Windows
...
Resolves #49 .
2017-02-05 09:49:46 +01:00
Niklas Keller
badf3a9100
Merge branch 'master' into amp_v2
2017-01-25 16:36:19 +01:00
Niklas Keller
0941c4e779
Merge branch 'master' into amp_v2
2017-01-25 13:10:06 +01:00
Paul
885515990c
Fix parsing servers with port in parseCustomServerUri
2017-01-25 12:52:55 +01:00
Aaron Piotrowski
f4055e5a52
Update for async-interop namespace change
2017-01-10 23:49:38 -06:00
Aaron Piotrowski
e13372219a
Merge branch 'master' into amp_v2
2017-01-10 18:17:28 -06:00
Niklas Keller
0b0ef2b82d
Enable AppVeyor, search in all interfaces for nameservers
2017-01-05 01:13:28 +01:00
Niklas Keller
cf08357a86
Add support for Windows DNS nameserver configuration ( #40 )
2017-01-04 20:07:28 +01:00
Aaron Piotrowski
5c5c0f92bd
Disable instead of unreference
2016-12-29 22:57:41 -06:00
Aaron Piotrowski
7091105e2f
Update for removal of Amp loop wrapper functions
2016-12-29 21:17:07 -06:00
Aaron Piotrowski
644c4f8fc6
Drop strict types
...
Dropping strict types so it is not enforced in callbacks provided by application code.
2016-12-29 21:16:14 -06:00
Aaron Piotrowski
0ff5c8b802
Awaitable → Promise
2016-11-15 10:42:15 -06:00
Aaron Piotrowski
acd649e39e
Use strict types
2016-08-23 23:20:25 -05:00
Aaron Piotrowski
9c1c0edba9
Add type declarations; code cleanup
2016-08-23 23:14:10 -05:00
Bob Weinand
f7ba250b77
PHP-7 only upgrade
2016-08-13 19:12:51 +02:00
Aaron Piotrowski
517de05422
Update for loop registry changes
2016-08-12 10:51:40 -05:00
Bob Weinand
46589b730a
Update for Amp v2
2016-08-02 23:57:40 +02:00
Bob Weinand
d021dd20f1
Fix broken hostname validation to match RFC 1123 2.1
...
Fixes #34
2016-07-07 16:07:10 +02:00
Bob Weinand
ba6016dd0a
Do async connect for TCP, use a hard timeout of 5 seconds here
...
Fixes #32
2016-05-26 21:49:36 +02:00
Niklas Keller
a721e5f583
Allow custom paths on Windows, fixes tests on Windows
2016-03-26 22:25:34 +01:00
Bob Weinand
9f12b2264f
Fix resolving localhost on Windows
2016-03-26 21:35:44 +01:00
Bob Weinand
78cda5692a
Add (array) cast for $types inside resolve()
2016-03-24 20:17:04 +01:00
Bob Weinand
4311c836bf
Rename SystemResolver => DefaultResolver
2016-03-20 11:40:08 +01:00
Niklas Keller
e3411ce472
Refactor into class with accessor like in amphp/amp and amphp/file, resolves #28
2016-03-19 22:23:55 +01:00
Bob Weinand
daf859ec40
Fix issues #25 and #26
2016-03-14 22:50:59 +01:00
Bob Weinand
2ca9766dff
Prevent multiple unloading of server
2016-02-29 19:58:53 +01:00
Bob Weinand
a3b2c9099f
Fixed issue #27
2016-02-25 12:36:51 +01:00
Bob Weinand
35b147d6f0
Fix parameter order
2016-02-21 21:54:50 +01:00
Niklas Keller
f70bd2d79f
Add missing return, add tests for __loadResolvConf
2015-12-23 16:47:49 +01:00
Niklas Keller
2f8103f173
Handle IPv6 nameservers correctly
2015-12-23 14:56:14 +01:00
Niklas Keller
4c4d450d4a
Fix #24 : Default nameservers without port
2015-12-08 10:41:38 +01:00
Niklas Keller
29ae0bd341
Catch RuntimeException from Amp\some and turn it into ResolutionException
2015-09-23 22:22:33 +02:00
Niklas Keller
218e5877cd
Add TODOs, update README
2015-09-18 15:09:28 +02:00
Bob Weinand
b63526343d
Style, fix minor bug with wrong $option index in conf loader
2015-09-18 03:37:10 +02:00
Niklas Keller
67ed5539ce
Add basic resolv.conf support
2015-09-18 02:49:06 +02:00
Bob Weinand
72764745f2
Automatically fallback to TCP upon timeout
2015-09-16 16:31:31 +02:00
Niklas Keller
e0fcee2f0a
Update to new cache api, remove minor code smell, import classes
2015-09-10 17:11:48 +02:00
Bob Weinand
bdb8b5bf96
Fixes, use amphp/file, few renamings
2015-09-08 23:03:25 +02:00
Bob Weinand
94f27c663f
Add support for DNS messages over TCP
2015-09-08 17:27:33 +02:00
Bob Weinand
ebb5fb510c
Switch to a new API to enable getting not only the first entry and not only A/AAAA records
...
This now can do queries to dns servers and you'll get the list of raw records in an array
2015-09-08 17:27:33 +02:00
Daniel Lowrey
b37314ce61
Miscellaneous cleanup
2015-08-02 09:19:32 -04:00
Daniel Lowrey
a2fe7a5764
Massive refactor using amp/1.0.0
2015-08-01 22:38:25 -04:00
Daniel Lowrey
79be6e8c28
initial wip
2015-07-27 21:53:44 -04:00
Daniel Lowrey
dd38041160
Update in preparation of amp v1
2015-05-20 15:30:20 -04:00
Daniel Lowrey
46d1981ff5
Remove ext/filter dependency in IP type check
2015-02-17 15:34:12 -05:00
Niklas Keller
0ac694a5ee
Match also subdomains with only one character
...
Example: m.example.com
2015-02-09 12:27:04 +01:00
Daniel Lowrey
aaf718e128
Update for amphp/amp v0.15.0
2014-12-08 12:07:24 -05:00
Chris Wright
980c7c9130
Add CacheFactory
2014-11-26 16:05:50 +00:00
Chris Wright
4dd32347a0
Remove unused "use" statement
2014-11-26 15:55:54 +00:00
Chris Wright
2a8e46babc
Merge pull request #17 from DaveRandom/fix/cached-null-address
...
Cached null value checks
2014-11-26 15:47:49 +00:00
Danack
0c9d4a62d5
Added extra check to ensure APC is functioning. This is apparently necessary as tested on PHP5.4 on OSX.
2014-11-21 19:34:40 +00:00
Danack
ea5610963b
Added check that the cache is enabled.
2014-11-21 16:06:36 +00:00
Danack
3bcf7e53a7
Changed default cache to be APCCache if the APC extension is loaded. This allows DNS lookups to be cached across requests when the library is used in a web SAPI.
2014-11-19 19:20:03 +00:00
Chris Wright
3e9fae44c0
Cached null value checks
...
- Prevent null values from being cached
- Delete values with expired TTLs from memory cached when an attempt is
made to access them
- Use default TTL when none is specified with Redis and APC
2014-11-19 12:22:42 +00:00
Danack
dd893c09a1
Fixed typo on variable. Added ClientTest to have client specific tests.
2014-11-10 15:42:58 +00:00
Danack
67b0ff1494
Fixed incorrect exception name.
2014-11-10 14:20:38 +00:00
Daniel Lowrey
e58d46d3c5
Disable read watcher when no resolve operations pending
2014-11-03 23:49:19 -05:00
Chris Wright
c188896170
Allow leading digits in name labels
...
Update name validator to allow RFC1101 names
2014-10-02 16:41:33 +01:00
Daniel Lowrey
d562ce24f4
Simplify directory structure
2014-09-24 13:35:10 -04:00
Daniel Lowrey
ccd9c87aeb
Initial amphp refactor
2014-09-24 00:04:46 -04:00
Chris Wright
3d81d18176
Fix hosts file bug and tests
...
Thanks to @Danack
2014-07-22 16:18:26 +01:00
Chris Wright
585b5578e3
Cache refactoring
...
- pull $type back down into interface
- remove delete() from interface
- make get() async-capable
2014-07-22 02:54:23 +01:00
Chris Wright
a30ead4952
Whitespace and code style fixes
...
I am anal. I am also sorry. Deal with it.
2014-07-21 17:48:36 +01:00
Danack
ca150f4093
Changed to project standard bracket placement. Moved AddrCache to Addr\Cache. Refactored to use 'use', added not about running tests to readme. Moved travis badge to point at main repo.
2014-07-21 14:12:51 +01:00
Danack
a50369e71e
Tests, Travis and Cache implementations
...
- Add tests
- Configure repo for use with Travis
- Add some more Cache implementations
2014-07-21 12:24:35 +01:00
Chris Wright
10bd03789c
Fix memory cache lookup handling
2014-07-20 00:15:33 +01:00
Chris Wright
6df50e2fc8
Fix undefined reference in async cache handling
2014-07-18 01:11:40 +01:00
Chris Wright
d74f8c9a10
Make caching API asynchronous
...
Closes #5
2014-07-18 01:07:01 +01:00
Chris Wright
361e207d1f
Merge branch '0.2'
2014-07-18 00:19:14 +01:00
Chris Wright
6fcf8b4d07
Check for errors when writing to socket
...
Fix for #3
2014-07-18 00:18:58 +01:00
Chris Wright
7960dc0e69
Merge branch '0.2'
2014-07-17 21:33:17 +01:00
Chris Wright
0cf046c2c5
Merge branch '0.1' into 0.2
2014-07-17 21:32:59 +01:00
Mateusz Nowak
add4e38c1c
Prevent from crashes when url doesn't exists
...
Cherry picked from 3655b79..0d62434
2014-07-17 21:31:55 +01:00
Chris Wright
d91f47a017
Partial implementation for #6
2014-07-17 21:07:24 +01:00
Chris Wright
d4257d132f
Merge branch '0.1' into 0.2
2014-06-17 18:06:25 +01:00
Chris Wright
22c90049f3
Handle CNAME resource records correctly
2014-06-17 18:01:10 +01:00
Chris Wright
01b3d38c43
Move caching layer into client
2014-06-16 18:30:28 +01:00
Chris Wright
f60ac3fc5e
Merge branch '0.1' into 0.2
2014-06-16 17:48:38 +01:00
Chris Wright
5a5610a0de
Validate name format in private method
2014-06-16 17:47:51 +01:00
Chris Wright
8699d67081
Merge branch '0.1' into 0.2
2014-06-16 03:55:10 +01:00
Chris Wright
6174dfdb25
Call cache store callback before lookup callbacks
2014-06-16 03:53:40 +01:00
Chris Wright
dce47d6a83
Merge branch '0.1' into 0.2
2014-06-16 03:32:14 +01:00
Chris Wright
8e82108197
Allow reusing of outstanding requests
...
Refactoring to ensure only one concurrent request is sent to the server for a unique name/type tuple
2014-06-16 03:28:59 +01:00
Chris Wright
f7e199ff75
Rename request -> lookup in client
2014-06-16 01:30:28 +01:00
Chris Wright
dd39ab1fef
Merge branch '0.1' into 0.2
2014-06-16 01:20:59 +01:00
Chris Wright
32d52285e1
Make outstanding request struct associative
2014-06-16 01:20:38 +01:00
Chris Wright
f8b44f24ac
Allow injecting of cache through factory
2014-06-15 23:36:17 +01:00
Chris Wright
4ab6ecc2be
Extract Cache to an interface
2014-06-15 22:52:02 +01:00
Chris Wright
f4cd031352
Move Client default values out of arg default value list
...
Allows constructor args to be skipped with null
2014-06-15 22:45:33 +01:00
Chris Wright
d5b5192ba3
Finished initial implementation
...
zOMG too many things to document
2014-06-15 00:47:15 +01:00
Chris Wright
1d418d3e82
Initial commit
...
WIP
2014-06-13 18:17:49 +01:00