#include #include #include #define OK(cmd) \ if (cmd) { fprintf (stderr, "" # cmd "failed\n"); exit (1); } int main (int argc, char * argv []) { stream_t in, out; char buffer [1]; int got, total = 0; OK (file_stream_create (& in, argv [1], MU_STREAM_READ)); OK (filter_create (& out, in, "base64", MU_FILTER_ENCODE, MU_STREAM_READ)); OK (stream_open (in)); while (1) { OK (stream_read (out, buffer, sizeof (buffer), total, & got)); write (1, buffer, got); if (got == 0) break; total += got; } write (1, "\n", 1); fprintf (stderr, "got %d bytes\n", total); return 0; }