### Function

# Camel uuencode_step

#### Declaration [src]

    gsize
    camel_uuencode_step (
      guchar* in,
      gsize len,
      guchar* out,
      guchar* uubuf,
      gint* state,
      guint32* save
    )

#### Description [src]

Uuencodes a chunk of data. Performs an ‘encode step’, only encodes blocks of 45 characters to the output at a time, saves left-over state in `uubuf`, `state` and `save` (initialize to 0 on first invocation).

#### Parameters

`in`

  Type: An array of `guchar`

  Input stream.

  The length of the array is specified in the `len` argument.
  The data is owned by the caller of the function.

`len`

  Type: `gsize`

  Input stream length.

`out`

  Type: An array of `guchar`

  Output stream.

  The argument will be modified by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

`uubuf`

  Type: An array of `guchar`

  Temporary buffer of 60 bytes.

  The argument will be modified by the function.
  The array must have 60 elements.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

`state`

  Type: `gint*`

  Holds the number of bits that are stored in `save`.

  The argument will be modified by the function.

`save`

  Type: An array of `guint32`

  Leftover bits that have not yet been encoded.

  The argument will be modified by the function.
  The length of the array is specified in the `state` argument.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

#### Return value

Type: `gsize`

The number of bytes encoded.