5d5295bea3a97efa8a95f8f67cdfad0f4bfd3ad5
2 * Copyright (C) 2008 Martin Willi
3 * Hochschule fuer Technik Rapperswil
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
25 static void* testing(void *thread
)
30 identification_t
*id
[ALLOCS
];
33 auth
= auth_info_create();
35 /* prepare identities */
36 for (i
= 0; i
< ALLOCS
; i
++)
40 snprintf(buf
, sizeof(buf
), "%d-%d@strongswan.org", (int)thread
, i
);
41 id
[i
] = identification_create_from_string(buf
);
48 /* allocate addresses */
49 for (i
= 0; i
< ALLOCS
; i
++)
51 addr
[i
] = charon
->attributes
->acquire_address(charon
->attributes
,
52 "test", id
[i
], auth
, NULL
);
59 /* release addresses */
60 for (i
= 0; i
< ALLOCS
; i
++)
62 charon
->attributes
->release_address(charon
->attributes
, "test", addr
[i
]);
66 for (i
= 0; i
< ALLOCS
; i
++)
68 addr
[i
]->destroy(addr
[i
]);
69 id
[i
]->destroy(id
[i
]);
76 /*******************************************************************************
77 * SQL pool performance test
78 ******************************************************************************/
83 pthread_t thread
[THREADS
];
85 for (i
= 0; i
< THREADS
; i
++)
87 if (pthread_create(&thread
[i
], NULL
, (void*)testing
, (void*)i
) < 0)
92 for (i
= 0; i
< THREADS
; i
++)
94 pthread_join(thread
[i
], &res
);