00001 /* 00002 * Drizzle Client & Protocol Library 00003 * 00004 * Copyright (C) 2008 Eric Day (eday@oddments.org) 00005 * All rights reserved. 00006 * 00007 * Use and distribution licensed under the BSD license. See 00008 * the COPYING file in this directory for full text. 00009 */ 00010 00016 #ifndef __DRIZZLE_PACK_H 00017 #define __DRIZZLE_PACK_H 00018 00019 #ifdef __cplusplus 00020 extern "C" { 00021 #endif 00022 00035 DRIZZLE_API 00036 uint8_t *drizzle_pack_length(uint64_t number, uint8_t *ptr); 00037 00041 DRIZZLE_API 00042 uint64_t drizzle_unpack_length(drizzle_con_st *con, drizzle_return_t *ret_ptr); 00043 00047 DRIZZLE_API 00048 uint8_t *drizzle_pack_string(char *string, uint8_t *ptr); 00049 00053 DRIZZLE_API 00054 drizzle_return_t drizzle_unpack_string(drizzle_con_st *con, char *buffer, 00055 uint64_t max_size); 00056 00060 DRIZZLE_API 00061 uint8_t *drizzle_pack_auth(drizzle_con_st *con, uint8_t *ptr, 00062 drizzle_return_t *ret_ptr); 00063 00066 #ifdef __cplusplus 00067 } 00068 #endif 00069 00070 #endif /* __DRIZZLE_PACK_H */