Wed Oct 28 15:47:57 2009

Asterisk developer's documentation


aesopt.h File Reference

#include "asterisk/aes.h"
#include "asterisk/endian.h"

Include dependency graph for aesopt.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define aes_sw32(x)   ((brot((x),8) & 0x00ff00ff) | (brot((x),24) & 0xff00ff00))
#define ALGORITHM_BYTE_ORDER   PLATFORM_BYTE_ORDER
#define ARRAYS
#define BPOLY   0x1b
#define BRG_BIG_ENDIAN   4321
#define BRG_LITTLE_ENDIAN   1234
#define brot(x, n)   (((aes_32t)(x) << n) | ((aes_32t)(x) >> (32 - n)))
#define d_1(t, n, b, v)   extern const t n[256]
#define d_4(t, n, b, v)   extern const t n[4][256]
#define dec_fmvars   aes_32t g2
#define dec_imvars   aes_32t g2, g4, g9
#define DEC_ROUND   FOUR_TABLES
#define DEC_UNROLL   FULL
#define ENC_ROUND   FOUR_TABLES
#define ENC_UNROLL   FULL
#define FF_TABLES
#define FIXED_TABLES
#define four_tables(x, tab, vf, rf, c)
#define FOUR_TABLES   4
#define FULL   2
#define fwd_mcol(x)   (g2 = gf_mulx(x), g2 ^ upr((x) ^ g2, 3) ^ upr((x), 2) ^ upr((x), 1))
#define gf_mulx(x)   ((((x) & m2) << 1) ^ ((((x) & m1) >> 7) * BPOLY))
#define inv_mcol(x)
#define KEY_SCHED   FOUR_TABLES
#define LAST_DEC_ROUND   FOUR_TABLES
#define LAST_ENC_ROUND   FOUR_TABLES
#define ls_box(x, c)   no_table(x,t_use(s,box),vf1,rf2,c)
#define m1   0x80808080
#define m2   0x7f7f7f7f
#define no_table(x, box, vf, rf, c)
#define NO_TABLES   0
#define NONE   0
#define one_table(x, op, tab, vf, rf, c)
#define ONE_TABLE   1
#define PARTIAL   1
#define RC_LENGTH   (5 * (AES_BLOCK_SIZE / 4 - 2))
#define rf1(r, c)   (r)
#define rf2(r, c)   ((8+r-c)&3)
#define s(x, c)   x[c]
#define SAFE_IO
#define t_dec(m, n)   t_##m##n
#define t_set(m, n)   t_##m##n
#define t_use(m, n)   t_##m##n
#define vf1(x, r, c)   (x)
#define word_in(x, c)
#define word_out(x, c, v)
#define WPOLY   0x011b

Functions

const aes_32t t_dec (r, c)[RC_LENGTH]


Define Documentation

#define aes_sw32 (  )     ((brot((x),8) & 0x00ff00ff) | (brot((x),24) & 0xff00ff00))

Definition at line 250 of file aesopt.h.

#define ALGORITHM_BYTE_ORDER   PLATFORM_BYTE_ORDER

Definition at line 311 of file aesopt.h.

#define ARRAYS

Definition at line 384 of file aesopt.h.

#define BPOLY   0x1b

Definition at line 572 of file aesopt.h.

#define BRG_BIG_ENDIAN   4321

Definition at line 162 of file aesopt.h.

#define BRG_LITTLE_ENDIAN   1234

Definition at line 161 of file aesopt.h.

#define brot ( x,
n   )     (((aes_32t)(x) << n) | ((aes_32t)(x) >> (32 - n)))

Definition at line 249 of file aesopt.h.

#define d_1 ( t,
n,
b,
 )     extern const t n[256]

Definition at line 949 of file aesopt.h.

#define d_4 ( t,
n,
b,
 )     extern const t n[4][256]

Definition at line 950 of file aesopt.h.

#define dec_fmvars   aes_32t g2

Definition at line 692 of file aesopt.h.

#define dec_imvars   aes_32t g2, g4, g9

Definition at line 701 of file aesopt.h.

#define DEC_ROUND   FOUR_TABLES

Definition at line 464 of file aesopt.h.

#define DEC_UNROLL   FULL

Definition at line 360 of file aesopt.h.

#define ENC_ROUND   FOUR_TABLES

Definition at line 448 of file aesopt.h.

#define ENC_UNROLL   FULL

Definition at line 352 of file aesopt.h.

#define FF_TABLES

Definition at line 373 of file aesopt.h.

#define FIXED_TABLES

Definition at line 411 of file aesopt.h.

#define four_tables ( x,
tab,
vf,
rf,
 ) 

Value:

(  tab[0][bval(vf(x,0,c),rf(0,c))] \
  ^ tab[1][bval(vf(x,1,c),rf(1,c))] \
  ^ tab[2][bval(vf(x,2,c),rf(2,c))] \
  ^ tab[3][bval(vf(x,3,c),rf(3,c))])

Definition at line 674 of file aesopt.h.

#define FOUR_TABLES   4

Definition at line 239 of file aesopt.h.

#define FULL   2

Definition at line 242 of file aesopt.h.

#define fwd_mcol (  )     (g2 = gf_mulx(x), g2 ^ upr((x) ^ g2, 3) ^ upr((x), 2) ^ upr((x), 1))

Definition at line 693 of file aesopt.h.

#define gf_mulx (  )     ((((x) & m2) << 1) ^ ((((x) & m1) >> 7) * BPOLY))

Definition at line 578 of file aesopt.h.

#define inv_mcol (  ) 

Value:

(g2 = gf_mulx(x), g4 = gf_mulx(g2), g9 = (x) ^ gf_mulx(g4), g4 ^= g9, \
                        (x) ^ g2 ^ g4 ^ upr(g2 ^ g9, 3) ^ upr(g4, 2) ^ upr(g9, 1))

Definition at line 702 of file aesopt.h.

#define KEY_SCHED   FOUR_TABLES

Definition at line 484 of file aesopt.h.

#define LAST_DEC_ROUND   FOUR_TABLES

Definition at line 472 of file aesopt.h.

#define LAST_ENC_ROUND   FOUR_TABLES

Definition at line 456 of file aesopt.h.

#define ls_box ( x,
 )     no_table(x,t_use(s,box),vf1,rf2,c)

Definition at line 715 of file aesopt.h.

#define m1   0x80808080

Definition at line 576 of file aesopt.h.

Referenced by sms_process(), and transtime().

#define m2   0x7f7f7f7f

Definition at line 577 of file aesopt.h.

#define no_table ( x,
box,
vf,
rf,
 ) 

Value:

bytes2word( \
    box[bval(vf(x,0,c),rf(0,c))], \
    box[bval(vf(x,1,c),rf(1,c))], \
    box[bval(vf(x,2,c),rf(2,c))], \
    box[bval(vf(x,3,c),rf(3,c))])

Definition at line 662 of file aesopt.h.

#define NO_TABLES   0

Definition at line 237 of file aesopt.h.

#define NONE   0

#define one_table ( x,
op,
tab,
vf,
rf,
 ) 

Value:

(     tab[bval(vf(x,0,c),rf(0,c))] \
  ^ op(tab[bval(vf(x,1,c),rf(1,c))],1) \
  ^ op(tab[bval(vf(x,2,c),rf(2,c))],2) \
  ^ op(tab[bval(vf(x,3,c),rf(3,c))],3))

Definition at line 668 of file aesopt.h.

#define ONE_TABLE   1

Definition at line 238 of file aesopt.h.

#define PARTIAL   1

Definition at line 241 of file aesopt.h.

#define RC_LENGTH   (5 * (AES_BLOCK_SIZE / 4 - 2))

Definition at line 493 of file aesopt.h.

#define rf1 ( r,
 )     (r)

Definition at line 681 of file aesopt.h.

#define rf2 ( r,
 )     ((8+r-c)&3)

Definition at line 682 of file aesopt.h.

#define s ( x,
 )     x[c]

Definition at line 399 of file aesopt.h.

Referenced by accept_thread(), add_sdp(), agent_devicestate(), agent_request(), aPGSQL_connect(), aPGSQL_fetch(), aPGSQL_query(), append_mailbox(), apply_options(), ast_app_parse_options(), ast_enum_init(), ast_filehelper(), ast_get_enum(), ast_get_txt(), ast_gethostbyname(), ast_lock_path(), ast_log_vsyslog(), ast_ouraddrfor(), ast_parseable_goto(), ast_playtones_start(), ast_readaudio_callback(), ast_readvideo_callback(), ast_rtp_reload(), ast_sched_del(), ast_sched_when(), ast_smoother_new(), ast_unlock_path(), attempt_reconnect(), build_secret(), console_dial(), cut_exec(), cut_internal(), destroy_endpoint(), dundi_answer_entity(), dundi_answer_query(), dundi_prop_precache(), dundi_show_precache(), eval_exec(), exec_exec(), filtroL(), filtroM(), filtroS(), find_channel(), forward_message(), function_enum(), function_ilink(), function_remote(), get_csv(), get_day(), get_dow(), get_month(), handle_request(), handle_showmanconn(), iax2_show_cache(), init_logger_chain(), jb_reset(), launch_netscript(), lintoalaw_framein(), lintog726_framein(), lintoulaw_framein(), listener(), load_config(), macro_exec(), manager_event(), math_exec(), monitor_handle_notowned(), param_parse(), parkandannounce_exec(), parse_moved_contact(), pbx_builtin_gotoif(), pbx_builtin_gotoiftime(), pbx_builtin_importvar(), pcm_write(), privacy_exec(), quit_handler(), random_exec(), rbi_pltocode(), readfile_exec(), record_exec(), recordthread(), reset_global_eid(), rpt_exec(), rtp_socket(), sayunixtime_exec(), sched_context_destroy(), send_sound(), session_do(), setrbi(), sms_readfile(), strtoq(), ulawtoalaw_framein(), vasprintf(), vmauthenticate(), vpb_call(), vpb_digit(), vpb_request(), zt_call(), and zt_request().

#define SAFE_IO

Definition at line 337 of file aesopt.h.

#define t_dec ( m,
n   )     t_##m##n

Definition at line 764 of file aesopt.h.

#define t_set ( m,
n   )     t_##m##n

Definition at line 765 of file aesopt.h.

#define t_use ( m,
n   )     t_##m##n

Definition at line 766 of file aesopt.h.

#define vf1 ( x,
r,
 )     (x)

Definition at line 680 of file aesopt.h.

#define word_in ( x,
 ) 

Value:

bytes2word(((aes_08t*)(x)+4*c)[0], ((aes_08t*)(x)+4*c)[1], \
                                   ((aes_08t*)(x)+4*c)[2], ((aes_08t*)(x)+4*c)[3])

Definition at line 552 of file aesopt.h.

#define word_out ( x,
c,
 ) 

Value:

{ ((aes_08t*)(x)+4*c)[0] = bval(v,0); ((aes_08t*)(x)+4*c)[1] = bval(v,1); \
                          ((aes_08t*)(x)+4*c)[2] = bval(v,2); ((aes_08t*)(x)+4*c)[3] = bval(v,3); }

Definition at line 554 of file aesopt.h.

#define WPOLY   0x011b

Definition at line 571 of file aesopt.h.


Function Documentation

const aes_32t t_dec ( ,
 
)


Generated on Wed Oct 28 15:47:57 2009 for Asterisk - the Open Source PBX by  doxygen 1.5.6