cbor: CBOR implementation for RIOT-OS (SWP)

    cbor: CBOR implementation for RIOT-OS                                                                                                                                                                  
                                                                                                                                                                                                           
    This is a malloc-free implementation of the Concise Binary Object                                                                                                                                      
    Representation (CBOR) data format for the RIOT-OS.                                                                                                                                                     
                                                                                                                                                                                                           
    This implementation mostly stand-alone, and it should be pretty easy to                                                                                                                                
    port to other platforms. We're only using the C STL and some custom                                                                                                                                    
    network-related functionaliy which could be easily replaced by depending                                                                                                                               
    on arpa/inet.h.                                                                                                                                                                                        
                                                                                                                                                                                                           
    The CBOR API is straight-forward to use and provides encoding/decoding                                                                                                                                 
    functionality for all major C types, such as:                                                                                                                                                          
    - int                                                                                                                                                                                                  
    - uint64_t                                                                                                                                                                                             
    - int64_t                                                                                                                                                                                              
    - float                                                                                                                                                                                                
    - double                                                                                                                                                                                               
    - char*                                                                                                                                                                                                
    - struct tm                                                                                                                                                                                            
    - time_t                                                                                                                                                                                               
                                                                                                                                                                                                           
    It is possible to conditionally compile this module via CFLAGS:                                                                                                                                        
    - CBOR_NO_CTIME: All ctime related features removed
    - CBOR_NO_FLOAT: All floating-point related features removed
    - CBOR_NO_STREAM_DECODE: Generic decoding feature removed
      (cbor_stream_decode normally prints out a CBOR data stream to stdout)
Don't you need to put this test at the beginning of the function? Otherwise the stream would be broken b/c the length marker was written but no actual content. I am not sure if that is really a use case, but maybe some application would find it useful just to omit some fields if the buffer is exhausted.