Blame libiscsi/tests/test_get_auth.c

Packit Service 2a7015
/*
Packit Service 2a7015
 * iSCSI Administration library
Packit Service 2a7015
 *
Packit Service 2a7015
 * Copyright (C) 2008-2009 Red Hat, Inc. All rights reserved.
Packit Service 2a7015
 * Copyright (C) 2008-2009 Hans de Goede <hdegoede@redhat.com>
Packit Service 2a7015
 * maintained by open-iscsi@googlegroups.com
Packit Service 2a7015
 *
Packit Service 2a7015
 * This program is free software; you can redistribute it and/or modify
Packit Service 2a7015
 * it under the terms of the GNU General Public License as published
Packit Service 2a7015
 * by the Free Software Foundation; either version 2 of the License, or
Packit Service 2a7015
 * (at your option) any later version.
Packit Service 2a7015
 *
Packit Service 2a7015
 * This program is distributed in the hope that it will be useful, but
Packit Service 2a7015
 * WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 2a7015
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Packit Service 2a7015
 * General Public License for more details.
Packit Service 2a7015
 *
Packit Service 2a7015
 * See the file COPYING included with this distribution for more details.
Packit Service 2a7015
 */
Packit Service 2a7015
Packit Service 2a7015
#include <stdio.h>
Packit Service 2a7015
#include <stdlib.h>
Packit Service 2a7015
#include <string.h>
Packit Service 2a7015
#include "libiscsi.h"
Packit Service 2a7015
Packit Service 2a7015
int main(void)
Packit Service 2a7015
{
Packit Service 2a7015
	struct libiscsi_node node;
Packit Service 2a7015
	struct libiscsi_context *context;
Packit Service 2a7015
	struct libiscsi_auth_info auth_info;
Packit Service 2a7015
	int rc = 0;
Packit Service 2a7015
Packit Service 2a7015
	snprintf(node.name, LIBISCSI_VALUE_MAXLEN, "%s",
Packit Service 2a7015
		 "iqn.2009-01.com.example:testdisk");
Packit Service 2a7015
	node.tpgt = 1;
Packit Service 2a7015
	snprintf(node.address, NI_MAXHOST, "%s", "127.0.0.1");
Packit Service 2a7015
	node.port = 3260;
Packit Service 2a7015
Packit Service 2a7015
	context = libiscsi_init();
Packit Service 2a7015
	if (!context) {
Packit Service 2a7015
		fprintf(stderr, "Error initializing libiscsi\n");
Packit Service 2a7015
		return 1;
Packit Service 2a7015
	}
Packit Service 2a7015
Packit Service 2a7015
	rc = libiscsi_node_get_auth(context, &node, &auth_info);
Packit Service 2a7015
	if (rc) {
Packit Service 2a7015
		fprintf(stderr, "Error setting authinfo: %s\n",
Packit Service 2a7015
			libiscsi_get_error_string(context));
Packit Service 2a7015
		goto leave;
Packit Service 2a7015
	}
Packit Service 2a7015
Packit Service 2a7015
	switch (auth_info.method) {
Packit Service 2a7015
		case libiscsi_auth_none:
Packit Service 2a7015
			printf("Method:  \"None\"\n");
Packit Service 2a7015
			break;
Packit Service 2a7015
		case libiscsi_auth_chap:
Packit Service 2a7015
			printf("Method:  \"CHAP\"\n");
Packit Service 2a7015
			printf("User:    \"%s\"\n", auth_info.chap.username);
Packit Service 2a7015
			printf("Pass:    \"%s\"\n", auth_info.chap.password);
Packit Service 2a7015
			printf("RevUser: \"%s\"\n",
Packit Service 2a7015
				auth_info.chap.reverse_username);
Packit Service 2a7015
			printf("RevPass: \"%s\"\n",
Packit Service 2a7015
				auth_info.chap.reverse_password);
Packit Service 2a7015
			break;
Packit Service 2a7015
	}
Packit Service 2a7015
leave:
Packit Service 2a7015
	libiscsi_cleanup(context);
Packit Service 2a7015
Packit Service 2a7015
	return rc;
Packit Service 2a7015
}