Bugs item #2813606, was opened at 2009-06-28 20:00
Message generated for change (Comment added) made by skinkie
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=2813606&group_id=56967

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Mapi
Group: Clients CVS Head
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Stefan de Konink (skinkie)
Assigned to: Nobody/Anonymous (nobody)
Summary: Error message for access denied

Initial Comment:
The error value for an access denied (for example when a user is not granted to 
access a table) is set. But the error message is not. My suggestion is to set 
the in mapilib message, my strlen crashed, so I expect it was returning a null 
value. I have fixed my code by adding a null check.

----------------------------------------------------------------------

Comment By: Stefan de Konink (skinkie)
Date: 2009-06-28 21:38

Message:
> Can you shed some light on how you would describe the difference between
"error value" and "error message"?

Ofcourse; as the documentation on
<http://monetdb.cwi.nl/projects/monetdb/SQL/Documentation/Mapi-Function-Reference.html>
explains the user:

MapiMsg mapi_error(Mapi mid)
Return the last error code or 0 if there is no error. 

> In particular what the "error value" for an "access denied" is.

While:
char *mapi_error_str(Mapi mid)
Return a pointer to the last error message. 

or

char *mapi_result_error(MapiHdl hdl)
Return a pointer to the last error message from the server. 


So what a user of the mapilib expects here is that MapiMsg is a value upon
error or 0 if there is no error. Now if I should use mapi_error_str or
mapi_result_error, or as suggested
<http://monetdb.cwi.nl/XQuery/Documentation/Library-Synopsis.html> (notice
the typo) map_explain_result() is open to me.

----------------------------------------------------------------------

Comment By: Fabian (mr-meltdown)
Date: 2009-06-28 21:29

Message:
/* Render error reply
*/
cherokee_dwriter_dict_open (&hdl->writer);
add_cstr_int (&hdl->writer, "SUCCESS", false);
add_cstr_int (&hdl->writer, "MONETDB_ERRNO",
mapi_error(dbh));

tmp = mapi_result_error(resHdl);
if (tmp)
add_cstr_str (&hdl->writer,
"MONETDB_ERROR", tmp, strlen(tmp));

Can you shed some light on how you would describe the difference between
"error value" and "error message"?  In particular what the "error value"
for an "access denied" is.

----------------------------------------------------------------------

Comment By: Stefan de Konink (skinkie)
Date: 2009-06-28 21:22

Message:
> can you give us (me) the slightest clue what you're doing

I'm trying to do a query on a table I have not been granted access to. And
trying to render the error message notifying my failure to do so. 


> what happens

The error message is not set, since strlen crashed on the result value I
expect it returned null.


> and what you expect?

My suggestion is to set the in mapilib message.


If the words cannot give you a clue I have the compiled C code here...

                        /* Render error reply
                         */
                        cherokee_dwriter_dict_open (&hdl->writer);
                        add_cstr_int (&hdl->writer, "SUCCESS", false);
                        add_cstr_int (&hdl->writer, "MONETDB_ERRNO",
mapi_error(dbh));

                        tmp = mapi_result_error(resHdl);
                        if (tmp)
                                add_cstr_str (&hdl->writer,
"MONETDB_ERROR", tmp, strlen(tmp));


----------------------------------------------------------------------

Comment By: Fabian (mr-meltdown)
Date: 2009-06-28 21:09

Message:
can you give us (me) the slightest clue what you're doing, what happens and
what you expect?

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=2813606&group_id=56967

------------------------------------------------------------------------------
_______________________________________________
Monetdb-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-bugs

Reply via email to