[SERVER-30361] mongod.conf bindIp option accept bogus parameters Created: 27/Jul/17 Updated: 30/Oct/23 Resolved: 02/Aug/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Admin |
| Affects Version/s: | None |
| Fix Version/s: | 3.2.18, 3.4.10, 3.5.11 |
| Type: | Bug | Priority: | Minor - P4 |
| Reporter: | Gilberto Velazquez | Assignee: | Sara Golemon |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
3.4.6 community |
||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Operating System: | ALL | ||||
| Backport Requested: |
v3.4, v3.2, v3.0
|
||||
| Steps To Reproduce: | Using 3.4.6. |
||||
| Sprint: | Platforms 2017-08-21 | ||||
| Participants: | |||||
| Description |
|
bindIp accepts ANY bogus string as a parameter if it is enclosed in square brackets. I found out a mongo.conf that had a list of values (IP's) enclosed in square brackets []. However mongod was listening on 0.0.0.0:portnumber. |
| Comments |
| Comment by Benno Geisselmann [ 10/Nov/17 ] |
|
Hi, Is it possible that this fix broke the actual feature to add a list of bind ips? in 3.4.10 we cannot set a list of bind ips anymore (doesn't matter which syntax). Can you tell me the syntax to add a list of bind ips in 3.4.10 ? |
| Comment by Githook User [ 22/Sep/17 ] |
|
Author: {'email': 'sara.golemon@mongodb.com', 'name': 'Sara Golemon', 'username': 'sgolemon'}Message: (cherry picked from commit 782672ef01d5903076b13e765cecedaea4981ecf) |
| Comment by Githook User [ 22/Sep/17 ] |
|
Author: {'email': 'sara.golemon@mongodb.com', 'name': 'Sara Golemon', 'username': 'sgolemon'}Message: (cherry picked from commit 782672ef01d5903076b13e765cecedaea4981ecf) |
| Comment by Githook User [ 10/Aug/17 ] |
|
Author: {'email': 'sara.golemon@mongodb.com', 'name': 'Sara Golemon'}Message: |
| Comment by Sara Golemon [ 02/Aug/17 ] |
|
Note that certain types of invalid configuration (passing a list or map where a scalar value is expected) previously silently passed validation and resulted in an empty value. With this change those misconfigurations will result in an error. |
| Comment by Sara Golemon [ 31/Jul/17 ] |
|
Root cause: This actually has nothing to do with IPv6, but is rather a YAML parsing issue since `bindIp: [something]` is taken as a single element array containing the value `something`. The options parser treats an array value in the YAML as quietly invalid and throws it out yielding no provided value to bindIp. I plan to address this by having an array value for bindIp be treated as an configuration error. |