From da5a6b4317fe8939cc98a18c30668fa323641fe9 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Wed, 5 Oct 2011 00:39:40 -0400 Subject: [PATCH] compile_et: generate *_err.c files that have strings marked for xgettext This allows error code strings to be internationalized. Signed-off-by: "Theodore Ts'o" --- lib/et/et_c.awk | 10 ++- lib/et/test_cases/continuation.c | 4 +- lib/et/test_cases/heimdal.c | 166 ++++++++++++++++++++------------------- lib/et/test_cases/heimdal2.c | 138 ++++++++++++++++---------------- lib/et/test_cases/heimdal3.c | 6 +- lib/et/test_cases/imap_err.c | 62 ++++++++------- lib/et/test_cases/simple.c | 46 +++++------ 7 files changed, 223 insertions(+), 209 deletions(-) diff --git a/lib/et/et_c.awk b/lib/et/et_c.awk index ea2e609..99c33ba 100644 --- a/lib/et/et_c.awk +++ b/lib/et/et_c.awk @@ -129,6 +129,8 @@ c2n["_"]=63 print "" > outfile print "#include " > outfile print "" > outfile + print "#define N_(a) a" > outfile + print "" > outfile print "static const char * const text[] = {" > outfile table_item_count = 0 } @@ -141,7 +143,7 @@ c2n["_"]=63 (continuation == 1) && ($0 ~ /"[ \t]*$/) { # printf "\t\t\"%s,\n", $0 > outfile - printf "\t%s,\n", cont_buf $0 > outfile + printf "\tN_(%s),\n", cont_buf $0 > outfile continuation = 0; } @@ -162,7 +164,7 @@ c2n["_"]=63 text = text FS $i } text=substr(text,2,length(text)-1); - printf "\t%s,\n", text > outfile + printf "\tN_(%s),\n", text > outfile table_item_count++ } @@ -190,7 +192,7 @@ c2n["_"]=63 { if (skipone) { - printf "\t%s,\n", $0 > outfile + printf "\tN_(%s),\n", $0 > outfile } skipone=0 } @@ -206,7 +208,7 @@ c2n["_"]=63 /^[ \t]*(index)[ \t]+[A-Z_0-9]+/ { new_idx = $2 for (i = table_item_count ; i < new_idx; i++) { - printf "\t\"Reserved %s error (%d)\",\n", \ + printf "\tN_(\"Reserved %s error (%d)\"),\n", \ table_name, table_item_count++ > outfile } } diff --git a/lib/et/test_cases/continuation.c b/lib/et/test_cases/continuation.c index 0529dd0..1207897 100644 --- a/lib/et/test_cases/continuation.c +++ b/lib/et/test_cases/continuation.c @@ -5,8 +5,10 @@ #include +#define N_(a) a + static const char * const text[] = { - "New password was found in a dictionary of possible passwords and\ntherefore may be easily guessed. Please choose another password.\nSee the ovpasswd man page for help in choosing a good password.", + N_("New password was found in a dictionary of possible passwords and\ntherefore may be easily guessed. Please choose another password.\nSee the ovpasswd man page for help in choosing a good password."), 0 }; diff --git a/lib/et/test_cases/heimdal.c b/lib/et/test_cases/heimdal.c index 22c7573..d9be4ce 100644 --- a/lib/et/test_cases/heimdal.c +++ b/lib/et/test_cases/heimdal.c @@ -5,89 +5,91 @@ #include +#define N_(a) a + static const char * const text[] = { - "Kerberos successful", - "Kerberos principal expired", - "Kerberos service expired", - "Kerberos auth expired", - "Incorrect kerberos master key version", - "Incorrect kerberos master key version", - "Incorrect kerberos master key version", - "Kerberos error: byte order unknown", - "Kerberos principal unknown", - "Kerberos principal not unique", - "Kerberos principal has null key", - "Reserved krb error (11)", - "Reserved krb error (12)", - "Reserved krb error (13)", - "Reserved krb error (14)", - "Reserved krb error (15)", - "Reserved krb error (16)", - "Reserved krb error (17)", - "Reserved krb error (18)", - "Reserved krb error (19)", - "Generic error from Kerberos KDC", - "Can't read Kerberos ticket file", - "Can't find Kerberos ticket or TGT", - "Reserved krb error (23)", - "Reserved krb error (24)", - "Reserved krb error (25)", - "Kerberos TGT Expired", - "Reserved krb error (27)", - "Reserved krb error (28)", - "Reserved krb error (29)", - "Reserved krb error (30)", - "Kerberos error: Can't decode authenticator", - "Kerberos ticket expired", - "Kerberos ticket not yet valid", - "Kerberos error: Repeated request", - "The kerberos ticket isn't for us", - "Kerberos request inconsistent", - "Kerberos error: delta_t too big", - "Kerberos error: incorrect net address", - "Kerberos protocol version mismatch", - "Kerberos error: invalid msg type", - "Kerberos error: message stream modified", - "Kerberos error: message out of order", - "Kerberos error: unauthorized request", - "Reserved krb error (44)", - "Reserved krb error (45)", - "Reserved krb error (46)", - "Reserved krb error (47)", - "Reserved krb error (48)", - "Reserved krb error (49)", - "Reserved krb error (50)", - "Kerberos error: current PW is null", - "Kerberos error: Incorrect current password", - "Kerberos protocol error", - "Error returned by Kerberos KDC", - "Null Kerberos ticket returned by KDC", - "Kerberos error: Retry count exceeded", - "Kerberos error: Can't send request", - "Reserved krb error (58)", - "Reserved krb error (59)", - "Reserved krb error (60)", - "Kerberos error: not all tickets returned", - "Kerberos error: incorrect password", - "Kerberos error: Protocol Error", - "Reserved krb error (64)", - "Reserved krb error (65)", - "Reserved krb error (66)", - "Reserved krb error (67)", - "Reserved krb error (68)", - "Reserved krb error (69)", - "Other error", - "Don't have Kerberos ticket-granting ticket", - "Reserved krb error (72)", - "Reserved krb error (73)", - "Reserved krb error (74)", - "Reserved krb error (75)", - "No ticket file found", - "Couldn't access ticket file", - "Couldn't lock ticket file", - "Bad ticket file format", - "tf_init not called first", - "Bad Kerberos name format", + N_("Kerberos successful"), + N_("Kerberos principal expired"), + N_("Kerberos service expired"), + N_("Kerberos auth expired"), + N_("Incorrect kerberos master key version"), + N_("Incorrect kerberos master key version"), + N_("Incorrect kerberos master key version"), + N_("Kerberos error: byte order unknown"), + N_("Kerberos principal unknown"), + N_("Kerberos principal not unique"), + N_("Kerberos principal has null key"), + N_("Reserved krb error (11)"), + N_("Reserved krb error (12)"), + N_("Reserved krb error (13)"), + N_("Reserved krb error (14)"), + N_("Reserved krb error (15)"), + N_("Reserved krb error (16)"), + N_("Reserved krb error (17)"), + N_("Reserved krb error (18)"), + N_("Reserved krb error (19)"), + N_("Generic error from Kerberos KDC"), + N_("Can't read Kerberos ticket file"), + N_("Can't find Kerberos ticket or TGT"), + N_("Reserved krb error (23)"), + N_("Reserved krb error (24)"), + N_("Reserved krb error (25)"), + N_("Kerberos TGT Expired"), + N_("Reserved krb error (27)"), + N_("Reserved krb error (28)"), + N_("Reserved krb error (29)"), + N_("Reserved krb error (30)"), + N_("Kerberos error: Can't decode authenticator"), + N_("Kerberos ticket expired"), + N_("Kerberos ticket not yet valid"), + N_("Kerberos error: Repeated request"), + N_("The kerberos ticket isn't for us"), + N_("Kerberos request inconsistent"), + N_("Kerberos error: delta_t too big"), + N_("Kerberos error: incorrect net address"), + N_("Kerberos protocol version mismatch"), + N_("Kerberos error: invalid msg type"), + N_("Kerberos error: message stream modified"), + N_("Kerberos error: message out of order"), + N_("Kerberos error: unauthorized request"), + N_("Reserved krb error (44)"), + N_("Reserved krb error (45)"), + N_("Reserved krb error (46)"), + N_("Reserved krb error (47)"), + N_("Reserved krb error (48)"), + N_("Reserved krb error (49)"), + N_("Reserved krb error (50)"), + N_("Kerberos error: current PW is null"), + N_("Kerberos error: Incorrect current password"), + N_("Kerberos protocol error"), + N_("Error returned by Kerberos KDC"), + N_("Null Kerberos ticket returned by KDC"), + N_("Kerberos error: Retry count exceeded"), + N_("Kerberos error: Can't send request"), + N_("Reserved krb error (58)"), + N_("Reserved krb error (59)"), + N_("Reserved krb error (60)"), + N_("Kerberos error: not all tickets returned"), + N_("Kerberos error: incorrect password"), + N_("Kerberos error: Protocol Error"), + N_("Reserved krb error (64)"), + N_("Reserved krb error (65)"), + N_("Reserved krb error (66)"), + N_("Reserved krb error (67)"), + N_("Reserved krb error (68)"), + N_("Reserved krb error (69)"), + N_("Other error"), + N_("Don't have Kerberos ticket-granting ticket"), + N_("Reserved krb error (72)"), + N_("Reserved krb error (73)"), + N_("Reserved krb error (74)"), + N_("Reserved krb error (75)"), + N_("No ticket file found"), + N_("Couldn't access ticket file"), + N_("Couldn't lock ticket file"), + N_("Bad ticket file format"), + N_("tf_init not called first"), + N_("Bad Kerberos name format"), 0 }; diff --git a/lib/et/test_cases/heimdal2.c b/lib/et/test_cases/heimdal2.c index eba3d62..a8d4c11 100644 --- a/lib/et/test_cases/heimdal2.c +++ b/lib/et/test_cases/heimdal2.c @@ -5,75 +5,77 @@ #include +#define N_(a) a + static const char * const text[] = { - "$Id: kadm_err.et,v 1.5 1998/01/16 23:11:27 joda Exp $", - "Cannot fetch local realm", - "Unable to fetch credentials", - "Bad key supplied", - "Can't encrypt data", - "Cannot encode/decode authentication info", - "Principal attemping change is in wrong realm", - "Packet is too large", - "Version number is incorrect", - "Checksum does not match", - "Unsealing private data failed", - "Unsupported operation", - "Could not find administrating host", - "Administrating host name is unknown", - "Could not find service name in services database", - "Could not create socket", - "Could not connect to server", - "Could not fetch local socket address", - "Could not fetch master key", - "Could not verify master key", - "Entry already exists in database", - "Database store error", - "Database read error", - "Insufficient access to perform requested operation", - "Data is available for return to client", - "No such entry in the database", - "Memory exhausted", - "Could not fetch system hostname", - "Could not bind port", - "Length mismatch problem", - "Illegal use of wildcard", - "Database is locked or in use--try again later", - "Insecure password rejected", - "Cleartext password and DES key did not match", - "Invalid principal for change srvtab request", - "Attempt do delete immutable principal", - "Reserved kadm error (36)", - "Reserved kadm error (37)", - "Reserved kadm error (38)", - "Reserved kadm error (39)", - "Reserved kadm error (40)", - "Reserved kadm error (41)", - "Reserved kadm error (42)", - "Reserved kadm error (43)", - "Reserved kadm error (44)", - "Reserved kadm error (45)", - "Reserved kadm error (46)", - "Reserved kadm error (47)", - "Reserved kadm error (48)", - "Reserved kadm error (49)", - "Reserved kadm error (50)", - "Reserved kadm error (51)", - "Reserved kadm error (52)", - "Reserved kadm error (53)", - "Reserved kadm error (54)", - "Reserved kadm error (55)", - "Reserved kadm error (56)", - "Reserved kadm error (57)", - "Reserved kadm error (58)", - "Reserved kadm error (59)", - "Reserved kadm error (60)", - "Reserved kadm error (61)", - "Reserved kadm error (62)", - "Reserved kadm error (63)", - "Null passwords are not allowed", - "Password is too short", - "Too few character classes in password", - "Password is in the password dictionary", + N_("$Id: kadm_err.et,v 1.5 1998/01/16 23:11:27 joda Exp $"), + N_("Cannot fetch local realm"), + N_("Unable to fetch credentials"), + N_("Bad key supplied"), + N_("Can't encrypt data"), + N_("Cannot encode/decode authentication info"), + N_("Principal attemping change is in wrong realm"), + N_("Packet is too large"), + N_("Version number is incorrect"), + N_("Checksum does not match"), + N_("Unsealing private data failed"), + N_("Unsupported operation"), + N_("Could not find administrating host"), + N_("Administrating host name is unknown"), + N_("Could not find service name in services database"), + N_("Could not create socket"), + N_("Could not connect to server"), + N_("Could not fetch local socket address"), + N_("Could not fetch master key"), + N_("Could not verify master key"), + N_("Entry already exists in database"), + N_("Database store error"), + N_("Database read error"), + N_("Insufficient access to perform requested operation"), + N_("Data is available for return to client"), + N_("No such entry in the database"), + N_("Memory exhausted"), + N_("Could not fetch system hostname"), + N_("Could not bind port"), + N_("Length mismatch problem"), + N_("Illegal use of wildcard"), + N_("Database is locked or in use--try again later"), + N_("Insecure password rejected"), + N_("Cleartext password and DES key did not match"), + N_("Invalid principal for change srvtab request"), + N_("Attempt do delete immutable principal"), + N_("Reserved kadm error (36)"), + N_("Reserved kadm error (37)"), + N_("Reserved kadm error (38)"), + N_("Reserved kadm error (39)"), + N_("Reserved kadm error (40)"), + N_("Reserved kadm error (41)"), + N_("Reserved kadm error (42)"), + N_("Reserved kadm error (43)"), + N_("Reserved kadm error (44)"), + N_("Reserved kadm error (45)"), + N_("Reserved kadm error (46)"), + N_("Reserved kadm error (47)"), + N_("Reserved kadm error (48)"), + N_("Reserved kadm error (49)"), + N_("Reserved kadm error (50)"), + N_("Reserved kadm error (51)"), + N_("Reserved kadm error (52)"), + N_("Reserved kadm error (53)"), + N_("Reserved kadm error (54)"), + N_("Reserved kadm error (55)"), + N_("Reserved kadm error (56)"), + N_("Reserved kadm error (57)"), + N_("Reserved kadm error (58)"), + N_("Reserved kadm error (59)"), + N_("Reserved kadm error (60)"), + N_("Reserved kadm error (61)"), + N_("Reserved kadm error (62)"), + N_("Reserved kadm error (63)"), + N_("Null passwords are not allowed"), + N_("Password is too short"), + N_("Too few character classes in password"), + N_("Password is in the password dictionary"), 0 }; diff --git a/lib/et/test_cases/heimdal3.c b/lib/et/test_cases/heimdal3.c index 18a9ccc..b8b9b73 100644 --- a/lib/et/test_cases/heimdal3.c +++ b/lib/et/test_cases/heimdal3.c @@ -5,9 +5,11 @@ #include +#define N_(a) a + static const char * const text[] = { - "Test message 1", - "Test message 2", + N_("Test message 1"), + N_("Test message 2"), 0 }; diff --git a/lib/et/test_cases/imap_err.c b/lib/et/test_cases/imap_err.c index 82a6ad0..6f576d3 100644 --- a/lib/et/test_cases/imap_err.c +++ b/lib/et/test_cases/imap_err.c @@ -5,37 +5,39 @@ #include +#define N_(a) a + static const char * const text[] = { - "System I/O error", - "Permission denied", - "Over quota", - "Too many user flags in mailbox", - "Mailbox has an invalid format", - "Operation is not supported on mailbox", - "Mailbox does not exist", - "Mailbox already exists", - "Invalid mailbox name", - "Mailbox is locked by POP server", - "Unknown/invalid partition", - "Invalid identifier", - "Message contains NUL characters", - "Message contains bare newlines", - "Message contains non-ASCII characters in headers", - "Message contains invalid header", - "Message has no header/body separator", - "Quota root does not exist", - "Unrecognized character set", - "Invalid user", - "Login incorrect", - "Anonymous login is not permitted", - "Unsupported quota resource", - "Mailbox is over quota", - "Mailbox is at %d%% of quota", - "Message %d no longer exists", - "Unable to checkpoint \\Seen state", - "Unable to preserve \\Seen state", - "LOGOUT received", - "Completed", + N_( "System I/O error"), + N_( "Permission denied"), + N_( "Over quota"), + N_( "Too many user flags in mailbox"), + N_( "Mailbox has an invalid format"), + N_( "Operation is not supported on mailbox"), + N_( "Mailbox does not exist"), + N_( "Mailbox already exists"), + N_( "Invalid mailbox name"), + N_( "Mailbox is locked by POP server"), + N_( "Unknown/invalid partition"), + N_( "Invalid identifier"), + N_( "Message contains NUL characters"), + N_( "Message contains bare newlines"), + N_( "Message contains non-ASCII characters in headers"), + N_( "Message contains invalid header"), + N_( "Message has no header/body separator"), + N_( "Quota root does not exist"), + N_( "Unrecognized character set"), + N_( "Invalid user"), + N_( "Login incorrect"), + N_( "Anonymous login is not permitted"), + N_( "Unsupported quota resource"), + N_( "Mailbox is over quota"), + N_( "Mailbox is at %d%% of quota"), + N_( "Message %d no longer exists"), + N_( "Unable to checkpoint \\Seen state"), + N_( "Unable to preserve \\Seen state"), + N_( "LOGOUT received"), + N_( "Completed"), 0 }; diff --git a/lib/et/test_cases/simple.c b/lib/et/test_cases/simple.c index f182c6f..10ab1a3 100644 --- a/lib/et/test_cases/simple.c +++ b/lib/et/test_cases/simple.c @@ -5,29 +5,31 @@ #include +#define N_(a) a + static const char * const text[] = { - "Can't read ticket file", - "Can't find ticket or TGT", - "TGT expired", - "Can't decode authenticator", - "Ticket expired", - "Repeated request", - "The ticket isn't for us", - "Request is inconsistent", - "Delta-T too big", - "Incorrect net address", - "Protocol version mismatch", - "Invalid message type", - "Message stream modified", - "Message out of order", - "Unauthorized request", - "Current password is null", - "Incorrect current password", - "Protocol error", - "Error returned by KDC", - "Null ticket returned by KDC", - "Retry count exceeded", - "Can't send request", + N_( "Can't read ticket file"), + N_( "Can't find ticket or TGT"), + N_( "TGT expired"), + N_( "Can't decode authenticator"), + N_( "Ticket expired"), + N_( "Repeated request"), + N_( "The ticket isn't for us"), + N_( "Request is inconsistent"), + N_( "Delta-T too big"), + N_( "Incorrect net address"), + N_( "Protocol version mismatch"), + N_( "Invalid message type"), + N_( "Message stream modified"), + N_( "Message out of order"), + N_( "Unauthorized request"), + N_( "Current password is null"), + N_( "Incorrect current password"), + N_( "Protocol error"), + N_( "Error returned by KDC"), + N_( "Null ticket returned by KDC"), + N_( "Retry count exceeded"), + N_( "Can't send request"), 0 }; -- 1.8.3.1