API remains the same, only adds helpers for common code which will be
used by active and passive scanning.
Change-Id: I3ef7845af766ba1634fe959f0a93d74601c6711c
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
This adds function handler for Error Response PDU which parses the
error code and call the request callback:
< ACL Data TX: Handle 3585 flags 0x00 dlen 5
ATT: Exchange MTU Request (0x02) len 0
invalid size
> ACL Data RX: Handle 3585 flags 0x02 dlen 9
ATT: Error Response (0x01) len 4
Exchange MTU Request (0x02)
Handle: 0x0000
Error: Invalid PDU (0x04)
Change-Id: I149dc20421690e63250d3e2ec388407a5600e089
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
If remote sends Pairing Failed any subsequent pairing procedure should
be restarted from Feature Exchange phase.
Change-Id: Ieccb4e64525e82092b8b0928bd3715f46eded9a2
Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
This binary file should not be here so removing it.
Change-Id: I00d4b2de353f1b7ed75e9480252ea5f3f4b0c3a4
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Specification clearly defines when each PDU is allowed to be send.
With this patch unexpected PDUs are rejected. This allows for better
resilience when remote device misbehaves. Another benefit is that
PDUs handlers doesn't have to do additional checks for unexpected
sequence or missing PDUs.
Specification is not clear on reject policy though. It could be
responding with Pairing Failed, disconnect link or just drop unexpected
data. This patch implements last option. Dropping unexpected data is
also present in other widely used implementations and proved to be
sufficient.
Change-Id: I9a28a0b7bea71775e656300f71172e60b2df3d9c
Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
Master should distribute keys only after slave distributed own keys.
Change-Id: Ibd339bd18699fe054bf2443103a4dc5785f494ab
Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
This is in preparation for distributing keys in correct order when
acting as a master.
Change-Id: I3054f167dfd5c7514ab1efaecab7854a24d8f11a
Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
If address stored in conn structure is BT_ADDR_LE_ANY, it means
that this slot has been already freed up, and the data is invalid.
bt_addr_le_cmp(peer, &conns[i].dst) returns True if both arguments
are BT_ADDR_LE_ANY, so invalid conn with address BT_ADDR_LE_ANY
can be returned.
Change-Id: I78ecafe0f9d6e1bbca4c7bf2c44eaec858787247
Signed-off-by: Mariusz Skamra <mariusz.skamra@tieto.com>
Some LE controllers returns in LE event connection complete zeroed
LE address on action cancelling pending outgoing connection.
To catch up such case don't transit state to DISCONNECT in cancel LE
connection HCI command routine and then based on lookup by state
routine for CONNECT state instead of lookup by address, filter out
such case in LE connection complete handler.
Lookup by state when sets to pickup connection object in CONNECT state
in LE connection complete handler doesn't breaks normal outgoing and
incoming connections handling.
Change-Id: I225b5f4786192309a28b886df6ee151ab27e8a24
Signed-off-by: Arkadiusz Lichwa <arkadiusz.lichwa@tieto.com>
This makes it easier to use shell since one can copy full address
from console output. Both variants with and without braces are
accepted.
btshell> connect 7C:2F:80:94:97:39 (public)
Connection pending
btshell> Connected: 7C:2F:80:94:97:39 (public)
btshell> disconnect 7C:2F:80:94:97:39 public
btshell> Disconnected: 7C:2F:80:94:97:39 (public)
Change-Id: Ic10386ee054ade1900e5f010857c0f85e5cb364a
Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
This will disable DAD for now in order to simplify the
IPv6 address assignment. This needs to be re-enabled
at some point.
Change-Id: I9d0ba58ef27df5fb8202863ccf6e33c5e29b6e14
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
If UIP_ND6_SEND_NA is not defined, then input_na() and input_ns()
functions are not needed and should be commented out.
Change-Id: I6849c7a7dba1a4cf60b8b26806df871b5f7801bf
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Return the send status (sent ok or sending failed) to the caller.
Needed so that the caller can figure out whether it needs to
release the net_buf or not.
Change-Id: I7a0617cbb625d6ffcaf503dffc55d474b8f337a7
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
The uip6.c:uip_process() was not checking the upper bound of
the UDP connection list when traversing the connection list.
Now the code checks the upper bound of the array (UIP_UDP_CONNS)
and will not go beyond the max number of items in the array.
Change-Id: I417ffd2bbb54922ae071f2f382f7e9470516ce55
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
We need to be able to configure link address length (6 or 8 bytes)
depending on what kind of transport we are using.
Change-Id: I9677e40a76f22e4656bcae7c9a667c0e76b0d996
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Need to define link address length for ethernet MAC addresses.
This is needed when connecting to host from qemu using slip
and when bluetooth connectivity will be used (in the future).
Change-Id: I3881e970cec52017fd4120a48ff7a99cc5559a0a
Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
General information regarding the development of microkernel
applications is included. A step by step process is included but
still in development. Cross-references are added and updated as needed.
Change-Id: Ib7442883016c92c660d03d806009a0bd1932fce7
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
The license guidelines list which code licenses are acceptable and what
licenses can be problematic. It also includes the IANAL disclaimer. The
collaboration.rst was changed to include the new content.
Change-Id: I92081a13575453c68b2492129126be4b4cee9766
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Adds new Quark platform configuration documentation to support the Galileo board.
Change-Id: I00ccc01ee75dbd54721d2d36583e9c7626e237d8
Signed-off-by: Carol Lee <carol.lee@windriver.com>
Adds infrastructure for platform configuration guides,
starting with the fsl_frdm_k64f platform configuration.
Incorporates inline sphynx tags except :guilabel:
which does not bold gui labels, a feature needed
for scanning a procedure for key info.
Change-Id: I4f5154dae896449fb709842501c69d8757deca3e
Signed-off-by: Carol Lee <carol.lee@windriver.com>
This commit removes 2 levels of checking and checks directly against
define Kconfig variables. Also reduce the code to one block and check
only once instead of twice.
This is a cosmetic change.
Change-Id: Ia427d9f15a9d09ea59d0230913168060d752ae99
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The USERDRIVER line is currently unused, and recent driver
initialization enhancements have rendered it obsolete.
Change-Id: If14089a52871a8891223156fde99b3fc9b650b10
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Not only does the build system need the config1p.mdef files any longer, those
files do not contain any useful data.
Change-Id: Ide9122af26c7a8338512c6cf7cd848e41a2a5dfd
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Since SysGen generates the code to invoke _sys_clock_driver_init(), the build
system no longer needs anything from the config1p.mdef files.
Change-Id: Id22615ff137c9d146ccc5c3777a75b2d3bfee73a
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
SysGen generates code to invoke _sys_clock_driver_init() when
CONFIG_SYS_CLOCK_EXISTS is defined thereby reducing the number
items the user must remember to configure.
Change-Id: I6f6909378c8a865a6ef50a99179800d58be5dd68
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
The revised name conforms to Zephyr OS naming conventions.
Change-Id: I5bcdaf1df7da9d8ce5787a08b29ead91dd8f24ce
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Removing the parameter to timer_driver() as it is not used.
Change-Id: I09275287eeb541be0dd315056b4f2bc6cbc2573c
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Remove function name from comment and add @brief instead.
Also capitilize first letter.
Change-Id: Ib708b49bf02e5bc89b0066637a55874e659637e0
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Previous comment style used RETRURNS:, use @return to comply
with javadoc style.
Change-Id: Ib1dffd92da1d97d60063ec5309b08049828f6661
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Some comments have \param, convert them to javadoc style.
Change-Id: I6abcdab91f4f616632392292600f4b0081b2a842
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The change replaces multiple asterisks to ** at
the beginning of comments and adds a space before
the asterisks at the beginning of lines.
Change-Id: I7656bde3bf4d9a31e38941e43b580520432dabc1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Change all occurances of /*! to /** to match javadoc
style.
Change-Id: I3a759d34e0e928216f61252682266e64c5b875f8
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Added a asterisk in front of every line of the comments to fully comply
with the Javadoc style. Updated all cross-references to comply with the
new style. Added a note indicating explicitly that enums are to be
documented just as structs.
Change-Id: If017e14e3e478ec28befb5c1fcae92090f91c32e
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Additional information regarding the microkernel is provided. Earlier
content was edited and some phrasing was improved in the introduction.
Change-Id: Ic940688d1b68dd410b0f2efecc73a7eff45fe6aa
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Added and updated cross-references. Made changes in content to increase
clarity based on feedback. Performed minor spelling, grammar and style
corrections.
Change-Id: I66c1920fd743a9b7f7a2b5313504c97bb7879afb
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: I59e2595764fe06ab32b7c4b9468c0f830ff44e9e
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: I3cf5042acff7b299ffee4189dde1a3ef403b0d84
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
The name of the private internal function ChReqSizeLeft() refers to the
obsolete "channels" name. Furthermore, given both its infrequent use and
its size, it is simpler to expand it inline and get rid of the function
altogether.
Change-Id: I025d8e48e4a4c26f501ed78d63b5c80f7950fe2b
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
The name of the private internal function ChReqSizeXferred() refers to the
obsolete "channels" name. Furthermore, as it is merely a wrapper for getting
the value of the iSizeXferred field, it is simpler to just access the field
directly.
Change-Id: I1e56b434cc6445b52ff72b9304fd9da9b91e7050
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
The name of the private internal function ChReqGetStatus() refers to the
obsolete "channel" name. Furthermore, as it is merely a wrapper for getting
the value of the Status field, it is simpler to just access the field
directly.
Change-Id: Ia48173606ade7b62e4b53f56d759468ced90494a
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: Id6fa98bf5c913eebae746e3a63ab5e96fad74e46
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: Ice8b3be8fc91c6e467a42fa5da8e19ced5a5e779
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: If1ba71b21971285b7ae2544f63c10f0ba261ced9
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This private API now follows Zephyr OS naming conventions.
Change-Id: I9797b7eccddc8ce45623a4d0a4ba4cef63bc5e0e
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>