[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cookie=.AspNetCore.Identity.Application not sent (expired)



   Hi Scott,  (The attached is a "Make Available Offline" from WDSc7. Same
   as Export.  I hope you can work with that)

   If you need it some other way please explain further.

   I did a source compare and the HEADERR4 sources are identical other
   than my changes, The changes are in the cookie2ts procedure.

   I don't know if you can get these screen shots.  (and day = *blanks)

   []

   Here is the second.  and mon = *blanks

   []

     On December 6, 2016 at 3:59 PM Scott Klement <sk@xxxxxxxxxxxxxxxx>
     wrote:

     David,

     Thanks for the bug report. Would you mind downloading the latest
     HTTPAPI from here:

     [1]http://www.scottklement.com/httpapi/beta

     Please make the changes to the HEADERR4 member in that download so
     that
     you are working with the current version, and send me a copy with
     the
     changes that you think should be made? That would make it much
     easier
     vs trying to make sure I understand the proper code change from an
     English description.

     Thanks!

     On 12/4/2016 8:40 AM, David Lerman wrote:

     Hi All,
     I was able to solve this problem. The reason that HTTPAPI thought
     the
     cookie was expired is because it could not parse the expiration date
     correctly and passed back *loval in the timestamp of the cookie
     expire date.
     The date I am getting is in the format of "MON, 12 DEC 2016 14:22:19
     GMT".
     This format matches everything I could find about standard cookie
     expiration
     dates.

     The bug I am reporting is in the cookie2ts procedure of
     LIBHTTP/QRPGLESRC(HEADERR4)

     The cookie expire date VALUE = 'MON, 12 DEC 2016 14:22:19 GMT'

     Bug reported: When STATE = 1 (day of month parse) and the trailing
     blank is
     processed the logic iterates without changing STATE = 2. The
     iteration sets
     the value of CH to the first character of the day of month which is
     then
     processed as STATE = 1 which finally sets STATE = 2. The problem is
     we lose
     the first character of the month.

     This same scenario is presented for STATE = 2 processing on the
     trailing
     blank after month. We lose the first character of the year.

     Both the STATE = 1 and STATE = 2 use the logic.
     if ch = ' '
     iter
     endif

     My suggested fixes are: (I made these changes and they worked for
     me.)

     *******************************************
     * State 1: Reading the "day of month"
     * (2-digit number)

     *******************************************
     c when state = 1

     c if ch = ' ' (added "and day = *blanks")
     c iter
     c endif

     C NUMBERS check ch Found
     c if found = 0
     c eval day = day + ch
     c else
     c eval state = 2
     c endif

     *******************************************
     * State 2: Reading the month name
     * (3-char abbreviation)

     *******************************************
     c when state = 2

     c if ch = ' ' (added "and mon = *blanks")
     c iter
     c endif

     C UPPER check ch Found
     c if found = 0
     c eval mon = mon + ch
     c else
     c eval state = 3
     c endif

     After making this change, the parse returned the timestamp
     correctly. The
     cookie is recognized as being current and is sent back to the server
     on the
     subsequent GET. Everything is working now.

     I believe this fix, or something like it, should be incorporated
     into the
     project but I don't know who is handling the project maintenance. If
     I can
     be of help, please let me know.

     Thank you very much for HTTPAPI and all the effort that Scott and
     others
     have put forth to make it do the great things it does.

     -----Original Message-----
     From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
     [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of DAVID
     lerman
     Sent: Thursday, December 01, 2016 2:47 PM
     To: ftpapi@xxxxxxxxxxxxxxxxxxxxxx
     Subject: cookie=.AspNetCore.Identity.Application not sent (expired)

     Hi, I have spent many hours searching the Archive for why the cookie
     is not
     being sent before resorting to this post. The only thing I found was
     a
     reference to "Temporary" cookies which would not be exported to the
     cookie
     file if specified. I think it was also implied it would not be sent
     back up
     on the next attempt to do something in the same session as well. It
     was
     mentioned in the HTTPAPI and Cookie support or the Cookie testers
     wanted
     thread.

     The cookie has an expiration of "cookie attr expires=Sun, 11 Dec
     2016
     15:29:54 GMT" and the web side developers assure me that it is not
     temporary.

     See the log below.. thanks in advance for any suggestions. I will
     investigate and test them immediately.

     HTTPAPI Ver 1.32 released 2016-02-10
     NTLM Ver 1.4.0 released 2014-12-22
     OS/400 Ver V7R1M0

     New iconv() objects set, PostRem=819. PostLoc=0. ProtRem=819.
     ProtLoc=0
     http_url_post(): entered
     http_persist_open(): entered
     http_long_ParseURL(): entered
     DNS resolver retrans: 2
     DNS resolver retry : 2
     DNS resolver options: x'00000136'
     DNS default domain: i5-microfirst.local
     DNS server found: 192.168.200.254
     DNS server found: 10.30.0.54
     DNS server found: 10.0.0.11
     Nagle's algorithm (TCP_NODELAY) disabled.
     http_persist_post(): entered
     http_persist_req(POST) entered.
     http_long_ParseURL(): entered
     http_long_ParseURL(): entered
     do_oper(POST): entered
     cookie_read(): read cookies from /home/DLERMAN/mbvCookie.txt
     There are 0 cookies in the cache
     POST /api/Login HTTP/1.1
     Host: 10.0.1.248
     User-Agent: http-api/1.32
     Content-Type: application/json
     Content-Length: 54

     senddoc(): entered
     {"User":{"UserName":"password1","Password":"password1"}}
     recvresp(): entered
     HTTP/1.1 200 OK
     Cache-Control: no-cache
     Pragma: no-cache
     Transfer-Encoding: chunked
     Content-Type: application/json; charset=utf-8
     Expires: -1
     Server: Kestrel
     Set-Cookie:
     .AspNetCore.Identity.Application=CfDJ8Labg42Ph2VBp9zbMgWAc60I67FKD-o
     OamNZ_Zp
     pLy0OccHNF1xxIsjDWxHjWuMu00oaqLAdIE3_z-20IqJxUXzlugoDkEyey5Ewcp6RFhi
     MoHm-cxl
     PZOTTL7SyIHkk9kiLImwYqHbBRmTgJva4VX4Y808LmTslQmT6N7EIfz-E2HZINBCKeKX
     IyqjGpm4
     VuRjdc0-Q9f876RJnINUY8TmdrlhbAYHYXhRrtzo4ZpbzkfGqLEY0cSTALFz9ziR0N_q
     iK-EeHcl
     4yXLsWeWvFpOz1lc9Idj5f8hil2qyQweNvSYSIb3_0-ORBHRxVrEsLKN8CQg8kjWD3kL
     cIqUavA4
     3XhXwkemKiny858dS3r8fEOGwz89vnkz585dCqOPCW0wb8Cim-nZf_SuE8L8FDtn_io_
     al3A5xsY
     1SMxxN0iO9DJsJtwUvOw8T9MM8-iJRTLmhuXOYYCBJ_KLVeRXPVgWXVnshjDOxoKx1yU
     jA4iEsIb
     NtM26Jmvw7tNou3Xctiauscu9CjW316cPG4-tu0DqJnA4Flxg0zZmNABjKHvw_Ho8qSq
     aMKA9aKB
     -rqPoXbZkDTWfYCiWMnow4j0EADkNdnIh3FrK65XkzlGDFe6aOCVqxhDmGJ89D535GBF
     Y0tDRjck
     _m9WRCFfT5J2WehSRGrpY46Qy0d1DJL9b8TflrLBHZp0jIdCMPTc2V8KM83WNNjSjIIE
     fgg2Gwcb
     9VcU; expires=Sun, 11 Dec 2016 15:29:54 GMT; path=/; httponly
     Date: Thu, 01 Dec 2016 15:29:56 GMT

     SetError() #13: HTTP/1.1 200 OK
     recvresp(): end with 200
     recvdoc parms: chunked 0
     header_load_cookies() entered
     cookie_read(): read cookies from /home/DLERMAN/mbvCookie.txt
     cookie_parse() entered
     cookie =
     .AspNetCore.Identity.Application=CfDJ8Labg42Ph2VBp9zbMgWAc60I67FKD-o
     OamNZ_Zp
     pLy0OccHNF1xxIsjDWxHjWuMu00oaqLAdIE3_z-20IqJxUXzlugoDkEyey5Ewcp6RFhi
     MoHm-cxl
     PZOTTL7SyIHkk9kiLImwYqHbBRmTgJva4VX4Y808LmTslQmT6N7EIfz-E2HZINBCKeKX
     IyqjGpm4
     VuRjdc0-Q9f876RJnI

     cookie attr
     .AspNetCore.Identity.Application=CfDJ8Labg42Ph2VBp9zbMgWAc60I67FKD-o
     OamNZ_Zp
     pLy0OccHNF1xxIsjDWxHjWuMu00oaqLAdIE3_z-20IqJxUXzlugoDkEyey5Ewcp6RFhi
     MoHm-cxl
     PZOTTL7SyIHkk9kiLImwYqHbBRmTgJva4VX4Y808LmTslQmT6N7EIfz-E2HZINBCKeKX
     IyqjGpm4
     VuRjdc0-Q9f876RJ
     cookie attr expires=Sun, 11 Dec 2016 15:29:54 GMT
     cookie attr path=/
     cookie attr httponly=
     cookie_dump() entered.
     cookie file is /home/DLERMAN/mbvCookie.txt
     recvchunk(): entered
     get_chunk_size(): entered
     152

     chunk size = 338
     get_chunk_size returned 338
     calling comm_blockread
     {"Claims":{"[2]http://schemas.xmlsoap.org/ws/2005/05/identity/claims
     /nameidenti
     fier":"ff66fbdf-72cb-4d02-af49-408915e80970","[3]http://schemas.xmls
     oap.org/ws/
     2005/05/identity/claims/name":"Pitboss1","AspNet.Identity.SecuritySt
     amp":"db
     bac734-87e5-43b8-86cb-ea5f0e81e19e","[4]http://schemas.microsoft.com
     /ws/2008/06
     /identity/claims/role":"Pitboss"}}
     comm_blockread returned 338

     get_chunk_size(): entered
     0

     chunk size = 0
     get_chunk_size returned 0
     http_close(): entered
     HTTPAPI Ver 1.32 released 2016-02-10
     NTLM Ver 1.4.0 released 2014-12-22
     OS/400 Ver V7R1M0

     http_url_get(): entered
     http_persist_open(): entered
     http_long_ParseURL(): entered
     DNS resolver retrans: 2
     DNS resolver retry : 2
     DNS resolver options: x'00000136'
     DNS default domain: i5-microfirst.local
     DNS server found: 192.168.200.254
     DNS server found: 10.30.0.54
     DNS server found: 10.0.0.11
     Nagle's algorithm (TCP_NODELAY) disabled.
     http_persist_get(): entered
     http_persist_req(GET) entered.
     http_long_ParseURL(): entered
     http_long_ParseURL(): entered
     do_oper(GET): entered
     cookie_read(): read cookies from /home/DLERMAN/mbvCookie.txt
     There are 1 cookies in the cache
     cookie=.AspNetCore.Identity.Application not sent (expired)
     GET /api/Orders HTTP/1.1
     Host: 10.0.1.248
     User-Agent: http-api/1.32

     recvresp(): entered
     HTTP/1.1 401 Unauthorized
     Transfer-Encoding: chunked
     Content-Type: text/plain; charset=utf-8
     Server: Kestrel
     Date: Thu, 01 Dec 2016 15:30:01 GMT

     SetError() #13: HTTP/1.1 401 Unauthorized
     recvresp(): end with 401
     recvdoc parms: chunked 0
     SetError() #36: This page requires a user-id & password
     http_close(): entered

     --------------------------------------------------------------------
     ---
     This is the FTPAPI mailing list. To unsubscribe, please go to:

     [5]http://www.scottklement.com/mailman/listinfo/ftpapi

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

     --------------------------------------------------------------------
     ---
     This is the FTPAPI mailing list. To unsubscribe, please go to:

     [6]http://www.scottklement.com/mailman/listinfo/ftpapi

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

References

   1. http://www.scottklement.com/httpapi/beta
   2. http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidenti
   3. http://schemas.xmlsoap.org/ws/
   4. http://schemas.microsoft.com/ws/2008/06
   5. http://www.scottklement.com/mailman/listinfo/ftpapi
   6. http://www.scottklement.com/mailman/listinfo/ftpapi

Attachment: HEADERR4.RPGLE
Description: Binary data

-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------