master/sdo_request.c
changeset 1313 ed15eef57d5c
parent 1312 74853e018898
child 1318 76b4014391bd
equal deleted inserted replaced
1312:74853e018898 1313:ed15eef57d5c
   143 /*****************************************************************************/
   143 /*****************************************************************************/
   144 
   144 
   145 /** Copies Sdo data from an external source.
   145 /** Copies Sdo data from an external source.
   146  *
   146  *
   147  * If the \a mem_size is to small, new memory is allocated.
   147  * If the \a mem_size is to small, new memory is allocated.
       
   148  *
       
   149  * \retval  0 Success.
       
   150  * \retval <0 Error code.
   148  */
   151  */
   149 int ec_sdo_request_copy_data(
   152 int ec_sdo_request_copy_data(
   150         ec_sdo_request_t *req, /**< Sdo request. */
   153         ec_sdo_request_t *req, /**< Sdo request. */
   151         const uint8_t *source, /**< Source data. */
   154         const uint8_t *source, /**< Source data. */
   152         size_t size /**< Number of bytes in \a source. */
   155         size_t size /**< Number of bytes in \a source. */
   153         )
   156         )
   154 {
   157 {
   155     if (ec_sdo_request_alloc(req, size))
   158     int ret = ec_sdo_request_alloc(req, size);
   156         return -1;
   159     if (ret < 0)
       
   160         return ret;
   157 
   161 
   158     memcpy(req->data, source, size);
   162     memcpy(req->data, source, size);
   159     req->data_size = size;
   163     req->data_size = size;
   160     return 0;
   164     return 0;
   161 }
   165 }