spdb_print.c

来自「ipsec vpn」· C语言 代码 · 共 113 行

C
113
字号
/* Security Policy Data Base debugging routines * Copyright (C) 2005 Michael Richardson <mcr@xelerance.com> * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License * for more details. * * RCSID $Id: spdb_print.c,v 1.1 2005/05/12 03:03:36 mcr Exp $ */#include <stdio.h>#include <string.h>#include <stdlib.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <sys/queue.h>#include <openswan.h>#include <openswan/ipsec_policy.h>#include "constants.h"#include "oswlog.h"#include "defs.h"#include "id.h"#include "x509.h"#include "pgp.h"#include "certs.h"#include "smartcard.h"#ifdef XAUTH_USEPAM#include <security/pam_appl.h>#endif#include "connections.h"	/* needs id.h */#include "state.h"#include "packet.h"#include "keys.h"#include "kernel.h"	/* needs connections.h */#include "log.h"#include "spdb.h"#include "whack.h"	/* for RC_LOG_SERIOUS */#include "sha1.h"#include "md5.h"#include "crypto.h" /* requires sha1.h and md5.h */#include "alg_info.h"#include "kernel_alg.h"#include "ike_alg.h"#include "db_ops.h"#include "spdb.h"voidprint_sa_attr(struct db_attr *at){    if(at->type == 0) {	return;    }        printf("        type: %u val: %d\n", at->type, at->val);}voidprint_sa_trans(struct db_trans *tr){    int i;    printf("      transform: %d cnt: %d\n",	   tr->transid, tr->attr_cnt);    for(i=0; i<tr->attr_cnt; i++) {	print_sa_attr(&tr->attrs[i]);    }}voidprint_sa_prop(struct db_prop *dp){    int i;    printf("    protoid: %d cnt: %d\n",	   dp->protoid, dp->trans_cnt);    for(i=0; i<dp->trans_cnt; i++) {	print_sa_trans(&dp->trans[i]);    }}voidprint_sa_prop_conj(struct db_prop_conj *pc){    int i;    printf("  conjunctions cnt: %d\n",	   pc->prop_cnt);    for(i=0; i<pc->prop_cnt; i++) {	print_sa_prop(&pc->props[i]);    }}voidsa_print(struct db_sa *f){    int i;    printf("sa disjunct cnt: %d\n",	   f->prop_conj_cnt);    for(i=0; i<f->prop_conj_cnt; i++) {	print_sa_prop_conj(&f->prop_conjs[i]);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?