Commit graph

451 commits

Author SHA1 Message Date
Madhu Venugopal
1b28c5e01d Internal interface to differentiate built-in drivers from remote
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-19 05:17:42 -08:00
Madhu Venugopal
bc45d84e8d Handle the case of registering active plugins during remote init
With Plugin-V2, plugins can get activated before remote driver is
Initialized. Those plugins fails to get registered with drvRegistry.

This fix handles that scenario

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-16 08:38:55 -08:00
Madhu Venugopal
48c4c81cb1 Merge pull request #1567 from daehyeok/logrus_formating
Refactoring logrus import and formatting
2016-12-02 16:02:57 -08:00
Madhu Venugopal
224a73d60b Merge pull request #1576 from daehyeok/misspell
Fixed misspelling
2016-12-02 16:02:23 -08:00
Daehyeok Mun
f89d6b0073 Fixed misspelling
Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2016-11-28 11:46:52 -07:00
Madhu Venugopal
5217602776 Create vxlan-id space from 0 instead of starting from 1
With the introduction of GetIDInRange function in IDM and using it in
ovmanager, the idm.New was modified to start from 1. But that causes
issues when the network is removed which results in releasing the
vxlan-id from IDM. With the offset of 1, the Release call incorrectly
releases a bit which could be in use by another network and this results
in the infamous "error creating vxlan interface: file exists" errors
when another network is created with this freed bit.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-11-25 13:02:03 -08:00
Daehyeok Mun
0f745fbb23 Refactoring logrus import and formatting
Fix import name to use original project name 'logrus' instead of 'log'
Removing `f` from `logrus.Debugf` when formatting string is not present.

Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2016-11-21 11:53:07 -07:00
Alessandro Boch
763f0fa1da Set a timeout on the netlink handle sockets
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-11-15 12:08:36 -08:00
Alessandro Boch
5b4059e087 Fix new golint reported errors
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-11-14 16:41:54 -08:00
Madhu Venugopal
5040d8ccd7 Merge pull request #1526 from sanimej/policy
when enabling ip forwarding set the default forward policy to drop
2016-11-10 10:12:26 -08:00
Madhu Venugopal
1066f9ed5c IDM need not be bound by default vxlan-id start index
This will allow users to use the full spectrum of vxlan-ids

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-11-09 14:42:54 -08:00
Madhu Venugopal
1b8698e148 Merge pull request #1541 from msabansal/defaultgw
Default GW support for overlay networks
2016-11-08 14:34:26 -08:00
msabansal
261fedba8c Default GW support for overlay networks
Signed-off-by: msabansal <sabansal@microsoft.com>
2016-11-08 14:12:29 -08:00
Daehyeok Mun
7f473c779a Refactoring logrus import and formatting
This fix tries to fix logrus formatting by removing `f` from
`logrus.[Error|Warn|Debug|Fatal|Panic|Info]f` when formatting string
is not present.
Also fix import name to use original project name 'logrus' instead of
'log'

Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2016-11-08 12:42:41 -07:00
Alessandro Boch
734f4ec86d Merge pull request #1514 from puneetpruthi/overlay_support
Overlay driver support for Solaris
2016-11-03 21:57:05 -07:00
Santhosh Manohar
9f2ecdcd9d If enabling ip forwarding set the default forward policy to drop
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-11-03 20:38:43 -07:00
Madhu Venugopal
3e11ddc4d9 Change vxlan-id start-idx to 4096
To make it consistent with windows and linux workers

Signed-off-by: Madhu Venugopal <madhu@docker.com>

Fixed build breaks

Signed-off-by: msabansal <sabansal@microsoft.com>
2016-11-03 16:50:15 -07:00
Madhu Venugopal
d1b012d97a Windows overlay driver support
1. Base work was done by msabansal and nwoodmsft
   from : https://github.com/msabansal/docker/tree/overlay
2. reorganized under drivers/windows/overlay and rebased to
   libnetwork master
3. Porting overlay common fixes to windows driver
    * 46f525c
    * ba8714e
    * 6368406
4. Windows Service Discovery changes for swarm-mode
5. renaming default windows ipam drivers as "windows"

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Signed-off-by: msabansal <sabansal@microsoft.com>
Signed-off-by: nwoodmsft <Nicholas.Wood@microsoft.com>
2016-11-03 16:50:04 -07:00
Santhosh Manohar
a00cb33ae0 Merge pull request #1525 from aboch/icc
Respect icc option for internal networks
2016-11-02 16:50:58 -07:00
Jana Radhakrishnan
ea579a4d0e Merge pull request #1477 from allencloud/fix-nits-in-comments
fix nits in comments and log
2016-11-02 09:58:18 -07:00
allencloud
a1ed5b7be2 fix nits in comments and log
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-10-29 19:35:18 +08:00
Alessandro Boch
4218a0a650 Respect icc option for internal networks
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-10-28 11:42:50 -07:00
Alessandro Boch
b834dfcfa0 Merge pull request #1452 from yongtang/26341-fixed-cidr-multiple-addresses-bridge
Fix issue for `--fixed-cidr` when bridge has multiple addresses
2016-10-26 12:52:19 -07:00
Alessandro Boch
15c13e5169 Merge pull request #1333 from coolljt0725/cleanup_driver_endpoint
Remove driver endpoints on network deleting
2016-10-26 12:51:41 -07:00
Yong Tang
53bf987984 Fix issue for --fixed-cidr when bridge has multiple addresses
This fix tries to address the issue raised in:
https://github.com/docker/docker/issues/26341
where multiple addresses in a bridge may cause `--fixed-cidr` to
not have the correct addresses.

The issue is that `netutils.ElectInterfaceAddresses(bridgeName)`
only returns the first IPv4 address.

This fix changes `ElectInterfaceAddresses()` and `addresses()`
so that all IPv4 addresses are returned. This will allow the
possibility of selectively choose the address needed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-10-21 13:58:16 -07:00
Puneet Pruthi
ef50edefde overlay driver support for Solaris
Signed-off-by: Puneet Pruthi <puneetpruthi@gmail.com>
2016-10-18 18:58:51 -07:00
Puneet Pruthi
a48b541da3 libnetwork support for Solaris
Signed-off-by: Puneet Pruthi <puneetpruthi@gmail.com>
2016-10-14 16:38:23 -07:00
Lei Jitang
433e3dfe98 Remove driver endpoints on network deleting
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-10-14 10:05:20 +08:00
Alessandro Boch
cff2573d1f Reset endpoint port info on connectivity revoke in bridge driver
- and update it to store. Otherwise after an ungraceful shutdown,
  at next boot there will be in store two bridge endpoints with
  same port-mapping data. When bridge driver will try to restore
  the endpoints, there will be conflicts and a container with
  restart policy could fail to start.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-10-12 13:02:47 -07:00
Alessandro Boch
eb02cb999b Merge pull request #1500 from anusha-ragunathan/update_path
Update plugingetter import path.
2016-10-07 13:25:42 -07:00
Anusha Ragunathan
5c77ba43e2 Update plugingetter import path.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-10-07 12:00:57 -07:00
Madhu Venugopal
b48e25b44f Add support for NetworkAllocate and NetworkFree in remote driver
Also added an API to return list of builtin network drivers

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-10-05 18:20:02 -07:00
Alessandro Boch
c609dfcfe7 Merge pull request #1466 from rony36/master
Fix macvlan private mode argument vaildation
2016-10-03 10:54:43 -07:00
Madhu Venugopal
59832beb31 Merge pull request #1470 from runcom/proxy-path
bridge,portmapper: custom docker-proxy path
2016-09-29 14:43:40 -07:00
Anusha Ragunathan
003e04775b Make libnetwork understand pluginv2.
As part of daemon init, network and ipam drivers are passed a
pluginstore object that implements the plugin/getter interface. Use this
interface methods in libnetwork to interact with network plugins. This
interface provides the new and improved pluginv2 functionality and falls
back to pluginv1 (legacy) if necessary.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-09-27 15:29:10 -07:00
Antonio Murdaca
38338863dc bridge,portmapper: custom docker-proxy path
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-09-25 18:07:58 +02:00
ronyweng
bd7fc6431b Fix macvlan private mode argument vaildation
Signed-off-by: Rony Weng <ronyweng@synology.com>
2016-09-23 18:57:42 +08:00
Jana Radhakrishnan
d6e596b3a0 Serialize overlay filter plumbing
When plumbing overlay filter rules serialize this to make sure that
multiple sandbox join or leave is not causing erroneous behavior while
moving the RETURN rule in the predefined chains.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-22 17:50:19 -07:00
Madhu Venugopal
9fae5d1779 Merge pull request #1412 from msabansal/dnsv2
DNS support for Windows
2016-09-20 17:35:26 -07:00
msabansal
7f43fd30f3 DNS support
Signed-off-by: msabansal <sabansal@microsoft.com>
2016-09-20 13:02:02 -07:00
Alessandro Boch
d4f3963a26 In overlay driver reset any state on setkey()
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-09-19 14:03:55 -07:00
Santhosh Manohar
04f63f7923 Merge pull request #1433 from mrjana/overlay
Ensure purging neighbor cache for stale deletes
2016-09-16 13:32:06 -07:00
Michael Holzheu
8d63e73522 Revert "add s390x arch build info at the netlink_deprecated_linux bridge driver"
This reverts commit b042dbe312.

The original commit breaks s390x, for example Docker build fails:

 * https://github.com/docker/docker/issues/26440

As discussed in the above issue:

  Even though char is unsigned by default on s390x, (gcc)go forces the type
  of RawSockaddr.Data to be signed.

  It makes no practical difference if these fields are signed or unsigned,
  it's just an API issue.

  The (assumed) reason for the original commit:

  For a while RawSockaddr.Data was unsigned during development of the gcc
  s390x port (not in an upstream release though). Probably the patch has
  been developed in this time frame.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
2016-09-09 18:04:45 +02:00
Chun Chen
71b8749971 Merge pull request #1301 from mountkin/keep-custom-bridge
don't delete the bridge interface if it was not created by libnetwork
2016-09-08 10:27:44 +08:00
Jana Radhakrishnan
ad10ae9b3b Move engine-api to docker/docker/api
Remove all dependencies to engine-api and start using docker/docker/api.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-07 14:38:45 -07:00
Jana Radhakrishnan
2ba6c399ea Ensure purging neighbor cache for stale deletes
When stale delete notifications are received, we still need to make sure
to purge sandbox neighbor cache because these stale deletes are most
typically out of order delete notifications and if an add for the
peermac was received before the delete of the old peermac,vtep pair then
we process that and replace the kernel state but the old neighbor state
in the sandbox cache remains. That needs to be purged when we finally
get the out of order delete notification.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
2016-09-07 10:45:40 -07:00
Shijiang Wei
6bd15397b2 don't delete the bridge interface if it was not created by libnetwork
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2016-09-07 14:08:08 +08:00
Shijiang Wei
6205a5d616 make sure the user-provided bridge interface is a bridge
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2016-09-06 13:14:58 +08:00
Alessandro Boch
f88765e4e6 Merge pull request #1198 from jordimassaguerpla/add_s390x
add s390x arch build info at the netlink_deprecated_linux bridge driver
2016-09-02 22:54:48 +02:00
Madhu Venugopal
e174a7c9f2 Merge pull request #1428 from aboch/sto
Cleanup on error in ProgramExternalConnectivity
2016-09-02 11:54:38 -07:00