Commit Graph
1247 Commits
Author SHA1 Message Date
Jon Shallow fc0761f24f tests/test_tls.c: Use coap_startup() instead of coap_dtls_startup()
This is done so we do not need to expose coap_dtls_startup()
publically
2018-04-13 08:43:38 +01:00
Jon Shallow fcf30a6afc libcoap-2.{map,sym}: Add in files 2018-04-13 08:43:37 +01:00
Jon Shallow ae5765af2f configure.ac: Bump LIBCOAP_API_VERSION and create LIBCOAP_NAME_SUFFIX
Make LIBCOAP_API_VERSION=2

Set LIBCOAP_NAME_SUFFIX to be $LIBCOAP_API_VERSION{-openssl,-gnutls,-tinydtls}
as appropriate based on the configure build options.

This means that library files will be named
libcoap-2-openssl.a
libcoap-2-openssl.so*
libcoap-2-gnutls.a
libcoap-2-gnutls.so*
libcoap-2-tinydtls.a
libcoap-2.a
libcoap-2.so*

Fix some typos

Use $withval instead of yes so that, say, --without-openssl works as expected.
2018-04-13 08:43:37 +01:00
Jon Shallow 2300f94f00 autogen.sh: Update AUTOGEN_FILES= files
Update the new LIBCOAP_API_VERSION of the files
Include examples/Makefile and tests/Makefile that are built by autogen.sh
2018-04-13 08:43:37 +01:00
Jon Shallow dc89f8c203 Makefile.am: Update to support new liboap library naming
Replace LIBCOAP_API_VERSON with LIBCOAP_NAME_SUFFIX when refering to building
the library files.  configure.ac defines LIBCOAP_NAME_SUFFIX.

libcoap-$LIBCOAP_API_VERSION.{sym,map} remain.

Make distclean clean up temporary src/*.o and src/*.lo files which may be
left lying around from a previous './configure xxx ; make' that was using
a different TLS library.

Add in coap_dtls_*, coap_tls_*, coap_socket_* functions that do not need to
be publically exposed in the libraries
2018-04-13 08:43:37 +01:00
Jon Shallow 0ac9bb53f6 .gitignore: Include more interim files to ignore 2018-04-13 08:43:37 +01:00
Jon Shallow 153e4dbe72 tests/Makefile.am: Update for new libcoap library naming 2018-04-13 08:43:37 +01:00
Jon Shallow ef6c72bf44 examples/Makefile.am: Update for new libcoap library naming 2018-04-13 08:43:37 +01:00
Jon Shallow b7f1f52a17 BUILDING: New file giving an overview of how to build libcoap 2018-04-13 08:43:31 +01:00
Jon Shallow bed987242d libcoap-2.pc.in: New Packaging file 2018-04-11 14:36:40 +01:00
obgm f889c29881 Merge pull request #139 from mrdeep1/man-pages
Add in man page support for the different exposed functions with examples
2018-04-09 14:01:55 +02:00
Jon Shallow d015c50091 coap-{client|rd|server}.txt.in: Move from examples to man directory 2018-04-07 11:34:44 +01:00
Jon Shallow 747205fb93 man/coap_observe.txt.in: New man page covering Observe usage 2018-04-07 11:34:44 +01:00
Jon Shallow 20cd610c03 examples/Makefile.am: Remove building man pages
Delete building man pages as they are now a part of the man directory
2018-04-07 11:34:44 +01:00
Jon Shallow 3f94f70fbd .gitignore: Add in man page temp files as well as src/ temp files to be ingored 2018-04-07 11:34:44 +01:00
Jon Shallow ebcf8ddb87 man/Makefile.am: New Makefile for building and installing man pages 2018-04-07 11:34:44 +01:00
Jon Shallow d21e0532bc configure.ac: Add in man page building with --enable-manpages
Create a new --enable-doxygen

Make --enable-documentation include both --enable-manpages and --enable-doxygen
and --disable-documentation include --disable-manpages and --disable-doxygen
2018-04-07 11:34:44 +01:00
Jon Shallow d766924954 autogen.sh: add in built man files to AUTOGEN_FILES=
Also add in examples/Makefile
2018-04-07 11:34:44 +01:00
Jon Shallow 050833ff50 Makefile.am: Add in man pages directory if man pages are being built 2018-04-07 11:34:44 +01:00
Jon Shallow c335c1e53e man/coap_tls_library.txt.in: New man page covering TLS library support 2018-04-07 11:34:44 +01:00
Jon Shallow 8b1fe26a7c man/coap_resource.txt.in: New man page covering resources 2018-04-07 11:34:44 +01:00
Jon Shallow 4a655b9840 man/coap_recovery.txt.in: New man page covering transmission recovery 2018-04-07 11:34:39 +01:00
Jon Shallow 3b9b5d2649 man/coap_handler.txt.in: New man page covering handlers 2018-04-06 10:49:56 +01:00
Jon Shallow e15f881af3 man/coap_context.txt.in: New man page convering contexts and session setup 2018-04-06 10:49:51 +01:00
Jon Shallow ee6ede84c2 man/coap_attribute.txt.in: New man page covering attributes 2018-04-06 10:49:46 +01:00
Jon Shallow ea30850d9d man/coap.txt.in: New overview man page 2018-04-06 10:49:35 +01:00
obgm 4cf5ff0c63 Merge pull request #152 from baw-serafin/resource_userdata
resource.h: Introduce new field user_data
2018-04-05 10:27:17 +02:00
obgm 4597c80983 Merge pull request #153 from mrdeep1/observe-fix
Observe additional functions to aid clarity
2018-04-05 10:21:28 +02:00
Jon Shallow b2df649822 libcoap-1.{map,sym}: Update 2018-04-04 18:39:12 +01:00
Jon Shallow ac97aeb9bc resource.c: Implement the coap_resource_notify_observers() function
Reuse coap_resource_set_dirty() and make coap_resource_set_dirty()
call coap_resource_notify_observers().
2018-04-04 18:39:12 +01:00
Jon Shallow 5ecc164caa coap_io.c: Include coap_check_notify() in the coap_write() logic
So that the application does not need to call in in the main i/o loop
2018-04-04 18:39:12 +01:00
Jon Shallow 864ae6df8c resource.h: Add in new Observe functions definitions
Add in

coap_resource_set_get_observable()
coap_resource_notify_observers()
coap_resource_get_uri_path()

Deprecate

coap_resource_set_dirty()
2018-04-04 18:38:14 +01:00
Jon Shallow 849deb2610 examples/contiki/coap-observer.c: Use COAP_OPTION_OBSERVE
As it is Observe that we are talking about here.
2018-04-04 16:46:04 +01:00
Jon Shallow 80cae52441 examples/coap-server.c: Update inline with new Observe functions
As we are talking about Observe here
2018-04-04 16:46:04 +01:00
Jon Shallow 97486e7112 examples/client.c: Change COAP_OPTION_SUBSCRIPTION to COAP_OPTION_OBSERVE
As we are talking about Observe here
2018-04-04 16:46:04 +01:00
Olaf Bergmann db48a839b6 test_uri.c: additional unit tests for URI creation
Added several unit tests for coap_get_uri_path():

* Check corner cases such as one or more zero-length Uri-Paths.
* Check percent-encoding of reserved characters.
* Check non-reserved characters that should not be percent-encoded.

This change also removes a couple of trailing LWS by accident.
2018-04-04 17:40:03 +02:00
obgm d28a8b5402 Merge pull request #133 from mrdeep1/issue-125
Issue 125 Fix - Support for unknown resource Uri when doing PUT/DELETE
2018-04-04 17:38:23 +02:00
Jon Shallow 373c132c27 resource.c: Add in support for unknown URI handler and update hashing
Include coap_resource_unknown_init() function for defining the unknown
resource.

Update hashing to use the resource's uri_path instead of key where appropriate
to avoid clashes when using the old hashed key.

coap_add_resource() now deletes previous resource with matching uri_path to
prevent duplication.

Remove now obsolete functions
coap_hash_request_uri()
coap_get_resource_from_key()

New function
coap_get_resource_from_uri_path()

*API Update coap_delete_resource() now deletes by resource, not by key.
2018-04-04 16:19:37 +01:00
Jon Shallow 9821b4b689 str.c: Replace str with coap_string_t
At some point, str will get replaced in all of the code with coap_string_t.
This is to prevent potential name clashes when compiling application code.

Use coap_malloc_type(COAP_STRING,... instead of coap_malloc(...
2018-04-04 16:19:37 +01:00
Jon Shallow 1c2d9416fe str.h: Add coap_string_equal() and create coap_string_t as replacement for str
Rename struct str as struct coap_string_t and 'typedef coap_string_t str' for
backwards compatabilty with the intent of removing str at some point to
prevent potential name clashes when compiling application code.

Add in new coap_string_equal() function for consistent comparing of strings.
2018-04-04 16:19:37 +01:00
Jon Shallow b7e1040fac hashkey.[ch]: Files removed as no longer used 2018-04-04 16:19:37 +01:00
Jon Shallow fbe1b8283d coap_config.h.lwip: Remove COAP_RESOURCES_NOHASH as no longer supported 2018-04-04 16:19:37 +01:00
Jon Shallow 8b5b9e083e coap_config.h.contiki: Remove COAP_RESOURCES_NOHASH as no longer supported 2018-04-04 16:19:37 +01:00
Jon Shallow 60e07c4eed Makefile.libcoap: Remove -DCOAP_RESOURCES_NOHASH as no longer supported 2018-04-04 16:19:37 +01:00
Jon Shallow 59d0d36b1d libcoap.vcxproj libcoap.vcxproj.filters: Stop building obsoleted hash libraries 2018-04-04 16:19:37 +01:00
Jon Shallow 1d61c32fee tests/test_uri.c: Update to use uri_path instead of key for resource hash. 2018-04-04 16:19:36 +01:00
Jon Shallow 14a2dc5b0b uri.c: Remove obsoleted functions, add in coap_get_uri_path()
With resource's hashed key being replaced by uri_path, old hash functions have
been removed and a new fuction coap_get_uri_path() added to abstract the
uri_path from the pdu.

Tidy up usage of is_unescaped_in_query() and slit it partially out to support
is_unescaped_in_path.

Update unsigned to uint16_t in appropriate places
2018-04-04 16:19:26 +01:00
obgm 0e672d048a Merge pull request #157 from mrdeep1/observers-memleak
resource.c: Fix memory leaks when deleting observers
2018-04-04 17:06:20 +02:00
Jon Shallow 11224dde47 resource.c: Fix memory leaks when deleting observers
When freeing off a subscriber entry, free off the saved query at
the same time.  Already done once, needs to be done in the three
other instances.
2018-03-15 20:33:25 +00:00
Jon Shallow 235a11ebe8 uri.h: remove coap_hash_path() and add coap_get_uri_path()
The old hashed key is no longer used, so coap_hash_path() is obsolete.

coap_get_uri_path() added to build the resource Uri Path from the pdu.
2018-03-14 09:32:58 +00:00