Merge branch 'jc/mention-tracking-for-pull-default'
[git.git] / credential.h
1 #ifndef CREDENTIAL_H
2 #define CREDENTIAL_H
3
4 #include "string-list.h"
5
6 struct credential {
7         struct string_list helpers;
8         unsigned approved:1,
9                  configured:1,
10                  use_http_path:1;
11
12         char *username;
13         char *password;
14         char *protocol;
15         char *host;
16         char *path;
17 };
18
19 #define CREDENTIAL_INIT { STRING_LIST_INIT_DUP }
20
21 void credential_init(struct credential *);
22 void credential_clear(struct credential *);
23
24 void credential_fill(struct credential *);
25 void credential_approve(struct credential *);
26 void credential_reject(struct credential *);
27
28 int credential_read(struct credential *, FILE *);
29 void credential_write(const struct credential *, FILE *);
30 void credential_from_url(struct credential *, const char *url);
31 int credential_match(const struct credential *have,
32                      const struct credential *want);
33
34 #endif /* CREDENTIAL_H */