ARC SDK
Base64.h
1 // -*- indent-tabs-mode: nil -*-
2 
3 /* Base64 encoding and decoding, borrowed from Axis2c project.
4  * Below is the license which is required by Axis2c.
5  */
6 
7 /*
8  * Copyright 2003-2004 The Apache Software Foundation.
9  *
10  * Licensed under the Apache License, Version 2.0 (the "License");
11  * you may not use this file except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  */
22 
23 #ifndef ARCLIB_BASE64
24 #define ARCLIB_BASE64
25 
26 #include <string>
27 
28 namespace Arc {
29 
31 
33  class Base64 {
34  public:
36  Base64();
37  ~Base64();
38  static int encode_len(int len);
40  static int encode(char *encoded, const char *string, int len);
41  static int decode_len(const char *bufcoded);
43  static int decode(char *bufplain, const char *bufcoded);
44  };
45 } // namespace Arc
46 
47 #endif // ARCLIB_BASE64