|
8 | 8 | *
|
9 | 9 | *
|
10 | 10 | * IDENTIFICATION
|
11 |
| - * $PostgreSQL: pgsql/src/backend/catalog/aclchk.c,v 1.163 2010/02/26 02:00:35 momjian Exp $ |
| 11 | + * $PostgreSQL: pgsql/src/backend/catalog/aclchk.c,v 1.164 2010/03/06 23:10:42 tgl Exp $ |
12 | 12 | *
|
13 | 13 | * NOTES
|
14 | 14 | * See acl.h.
|
@@ -304,24 +304,60 @@ restrict_and_check_grant(bool is_grant, AclMode avail_goptions, bool all_privs,
|
304 | 304 | if (is_grant)
|
305 | 305 | {
|
306 | 306 | if (this_privileges==0)
|
307 |
| -ereport(WARNING, |
308 |
| -(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
309 |
| -errmsg("no privileges were granted for \"%s\"",objname))); |
| 307 | + { |
| 308 | +if (objkind==ACL_KIND_COLUMN&&colname) |
| 309 | +ereport(WARNING, |
| 310 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
| 311 | +errmsg("no privileges were granted for column \"%s\" of relation \"%s\"", |
| 312 | +colname,objname))); |
| 313 | +else |
| 314 | +ereport(WARNING, |
| 315 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
| 316 | +errmsg("no privileges were granted for \"%s\"", |
| 317 | +objname))); |
| 318 | +} |
310 | 319 | elseif (!all_privs&&this_privileges!=privileges)
|
311 |
| -ereport(WARNING, |
312 |
| -(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
313 |
| -errmsg("not all privileges were granted for \"%s\"",objname))); |
| 320 | +{ |
| 321 | +if (objkind==ACL_KIND_COLUMN&&colname) |
| 322 | +ereport(WARNING, |
| 323 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
| 324 | +errmsg("not all privileges were granted for column \"%s\" of relation \"%s\"", |
| 325 | +colname,objname))); |
| 326 | +else |
| 327 | +ereport(WARNING, |
| 328 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_GRANTED), |
| 329 | +errmsg("not all privileges were granted for \"%s\"", |
| 330 | +objname))); |
| 331 | +} |
314 | 332 | }
|
315 | 333 | else
|
316 | 334 | {
|
317 | 335 | if (this_privileges==0)
|
318 |
| -ereport(WARNING, |
319 |
| -(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
320 |
| -errmsg("no privileges could be revoked for \"%s\"",objname))); |
| 336 | +{ |
| 337 | +if (objkind==ACL_KIND_COLUMN&&colname) |
| 338 | +ereport(WARNING, |
| 339 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
| 340 | +errmsg("no privileges could be revoked for column \"%s\" of relation \"%s\"", |
| 341 | +colname,objname))); |
| 342 | +else |
| 343 | +ereport(WARNING, |
| 344 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
| 345 | +errmsg("no privileges could be revoked for \"%s\"", |
| 346 | +objname))); |
| 347 | +} |
321 | 348 | elseif (!all_privs&&this_privileges!=privileges)
|
322 |
| -ereport(WARNING, |
323 |
| -(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
324 |
| -errmsg("not all privileges could be revoked for \"%s\"",objname))); |
| 349 | +{ |
| 350 | +if (objkind==ACL_KIND_COLUMN&&colname) |
| 351 | +ereport(WARNING, |
| 352 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
| 353 | +errmsg("not all privileges could be revoked for column \"%s\" of relation \"%s\"", |
| 354 | +colname,objname))); |
| 355 | +else |
| 356 | +ereport(WARNING, |
| 357 | +(errcode(ERRCODE_WARNING_PRIVILEGE_NOT_REVOKED), |
| 358 | +errmsg("not all privileges could be revoked for \"%s\"", |
| 359 | +objname))); |
| 360 | +} |
325 | 361 | }
|
326 | 362 |
|
327 | 363 | returnthis_privileges;
|
@@ -3046,7 +3082,7 @@ aclcheck_error_col(AclResult aclerr, AclObjectKind objectkind,
|
3046 | 3082 | caseACLCHECK_NO_PRIV:
|
3047 | 3083 | ereport(ERROR,
|
3048 | 3084 | (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
|
3049 |
| -errmsg("permission denied for column%s of relation%s", |
| 3085 | +errmsg("permission denied for column\"%s\" of relation\"%s\"", |
3050 | 3086 | colname,objectname)));
|
3051 | 3087 | break;
|
3052 | 3088 | caseACLCHECK_NOT_OWNER:
|
|