diff options
-rw-r--r-- | source3/libads/kerberos_keytab.c | 4 | ||||
-rw-r--r-- | source3/utils/net_ads.c | 13 |
2 files changed, 12 insertions, 5 deletions
diff --git a/source3/libads/kerberos_keytab.c b/source3/libads/kerberos_keytab.c index 95a3a37712..a1038e1f2d 100644 --- a/source3/libads/kerberos_keytab.c +++ b/source3/libads/kerberos_keytab.c @@ -801,7 +801,7 @@ done: List system keytab. ***********************************************************************/ -int ads_keytab_list(void) +int ads_keytab_list(const char *keytab_name) { krb5_error_code ret = 0; krb5_context context = NULL; @@ -819,7 +819,7 @@ int ads_keytab_list(void) return ret; } - ret = smb_krb5_open_keytab(context, NULL, False, &keytab); + ret = smb_krb5_open_keytab(context, keytab_name, False, &keytab); if (ret) { DEBUG(1,("ads_keytab_list: smb_krb5_open_keytab failed (%s)\n", error_message(ret))); goto out; diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index a1206bbd52..29d7e386d8 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -2423,12 +2423,13 @@ static int net_ads_keytab_usage(int argc, const char **argv) " FLUSH Flushes out all keytab entries\n"\ " HELP Prints this help message\n"\ " LIST List the keytab\n"\ -"The ADD command will take arguments, the other commands\n"\ +"The ADD and LIST command will take arguments, the other commands\n"\ "will not take any arguments. The arguments given to ADD\n"\ "should be a list of principals to add. For example, \n"\ " net ads keytab add srv1 srv2\n"\ "will add principals for the services srv1 and srv2 to the\n"\ "system's keytab.\n"\ +"The LIST command takes a keytabname.\n"\ "\n" ); return -1; @@ -2479,15 +2480,21 @@ static int net_ads_keytab_create(int argc, const char **argv) static int net_ads_keytab_list(int argc, const char **argv) { - return ads_keytab_list(); + const char *keytab = NULL; + + if (argc >= 1) { + keytab = argv[0]; + } + + return ads_keytab_list(keytab); } int net_ads_keytab(int argc, const char **argv) { struct functable func[] = { - {"CREATE", net_ads_keytab_create}, {"ADD", net_ads_keytab_add}, + {"CREATE", net_ads_keytab_create}, {"FLUSH", net_ads_keytab_flush}, {"HELP", net_ads_keytab_usage}, {"LIST", net_ads_keytab_list}, |