Welcome to the Builder Academy

Question Another crash bug

More
30 Jan 2018 01:49 - 30 Jan 2018 01:50 #7465 by Sascha
Replied by Sascha on topic Another crash bug
There's only one core file, and it doesn't have today's date. I'm missing something here. I'm attaching a screen shot. Would it be advisable to delete that core file and wait for another crash?

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000
Attachments:
Last edit: 30 Jan 2018 01:50 by Sascha.

Please Log in or Create an account to join the conversation.

More
30 Jan 2018 22:29 #7471 by thomas
Replied by thomas on topic Another crash bug
Oh, you're on windows... hmm. Should have known it wouldn't be easy.

On windows, a crash generally doesn't generate a core file. Instead, it generates the backtrace files you see there. However, they're useless for debugging.

Tutorials online suggest you can turn on dump file creation and use windbg to analyze those dumps, but I really have no idea. How did you generate a dump file on the 13th?

Please Log in or Create an account to join the conversation.

More
30 Jan 2018 23:16 - 30 Jan 2018 23:17 #7474 by Sascha
Replied by Sascha on topic Another crash bug
I am entirely unsure about the 13th. In fact, I wasn't even home that week, so I think it crashed while I was away.

My hosting is through Dune.net and it doesn't look or feel like a Windows setup. Should I ask them to be sure? Not that I doubt you, Thomas, I'm trying to understand the situation so that in the future I don't have such a deer-in-the-headlights look.

What I did was I deleted that core file, as the help/tutorial post indicated that I could since they potentially get so large. I'm waiting for another crash so that I will then have solid data. Since we have characters logging in and out with no issue, except with this one character, I've mailed that player and asked them to please set a time with me to try to log in and see if that character is crashing us. Could be coincidence.

I think I'm kind of stuck for now, overall...?

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000
Last edit: 30 Jan 2018 23:17 by Sascha.

Please Log in or Create an account to join the conversation.

More
31 Jan 2018 00:44 - 31 Jan 2018 00:50 #7476 by Fizban
Replied by Fizban on topic Another crash bug
I'm pretty sure she's running the MUD on a linux distro, I think the screenshot looked like windows because it was likely taken from within a ftp program or admin panel of some variety.

If I had to guess

ulimit -c unlimited is missing from the autorun file, or .bash_profile or .bashrc have ulimit -c 1 in them.
Last edit: 31 Jan 2018 00:50 by Fizban.

Please Log in or Create an account to join the conversation.

More
31 Jan 2018 01:13 #7477 by Sascha
Replied by Sascha on topic Another crash bug
From autorun:
Code:
# ulimit -c unlimited # The port on which to run the MUD PORT=4000

From .profile:
Code:
# ~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package. #umask 022 # if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi

From bashrc:
Code:
# ~/.bashrc: executed by bash(1) for non-login shells. # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # for examples # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac # don't put duplicate lines or lines starting with space in the history. # See bash(1) for more options HISTCONTROL=ignoreboth # append to the history file, don't overwrite it shopt -s histappend # for setting history length see HISTSIZE and HISTFILESIZE in bash(1) HISTSIZE=1000 HISTFILESIZE=2000 # check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. shopt -s checkwinsize # If set, the pattern "**" used in a pathname expansion context will # match all files and zero or more directories and subdirectories. #shopt -s globstar # make less more friendly for non-text input files, see lesspipe(1) [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" # set variable identifying the chroot you work in (used in the prompt below) if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi # set a fancy prompt (non-color, unless we know we "want" color) case "$TERM" in xterm-color) color_prompt=yes;; esac # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal window # should be on the output of commands, not on the prompt #force_color_prompt=yes if [ -n "$force_color_prompt" ]; then if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then # We have color support; assume it's compliant with Ecma-48 # (ISO/IEC-6429). (Lack of such support is extremely rare, and such # a case would tend to support setf rather than setaf.) color_prompt=yes else color_prompt= fi fi if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fi unset color_prompt force_color_prompt # If this is an xterm set the title to user@host:dir case "$TERM" in xterm*|rxvt*) PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" ;; *) ;; esac # enable color support of ls and also add handy aliases if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' #alias dir='dir --color=auto' #alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' fi # some more ls aliases alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' # Add an "alert" alias for long running commands. Use like so: # sleep 10; alert alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' # Alias definitions. # You may want to put all your additions into a separate file like # ~/.bash_aliases, instead of adding them here directly. # See /usr/share/doc/bash-doc/examples in the bash-doc package. if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi # enable programmable completion features (you don't need to enable # this, if it's already enabled in /etc/bash.bashrc and /etc/profile # sources /etc/bash.bashrc). if ! shopt -oq posix; then if [ -f /usr/share/bash-completion/bash_completion ]; then . /usr/share/bash-completion/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fi fi

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

More
31 Jan 2018 02:13 #7479 by Sascha
Replied by Sascha on topic Another crash bug
And voila. This is... so above my paygrade.
Code:
Reading symbols from bin/circle...done. [New LWP 18028] Core was generated by `bin/circle -q 4000'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 209 ../sysdeps/x86_64/multiarch/../strcmp.S: No such file or directory. (gdb) bt #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 (gdb) list 204 in ../sysdeps/x86_64/multiarch/../strcmp.S (gdb) info local No locals. (gdb) up #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 1488 if (strncmp(CRYPT(arg, GET_PASSWD(d->character)), GET_PASSWD(d->character), MAX_PWD_LENGTH)) { (gdb) bt #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 (gdb) list 1483 write_to_output(d, "\r\n"); 1484 1485 if (!*arg) 1486 STATE(d) = CON_CLOSE; 1487 else { 1488 if (strncmp(CRYPT(arg, GET_PASSWD(d->character)), GET_PASSWD(d->character), MAX_PWD_LENGTH)) { 1489 mudlog(BRF, LVL_GOD, TRUE, "Bad PW: %s [%s]", GET_NAME(d->character), d->host); 1490 GET_BAD_PWS(d->character)++; 1491 save_char(d->character); 1492 if (++(d->bad_pws) >= CONFIG_MAX_BAD_PWS) { /* 3 strikes and you're out. */ (gdb) info local load_result = <optimized out> player_i = <optimized out> olc_functions = {{state = 18, func = 0x4caf80 <oedit_parse>}, {state = 20, func = 0x502cd0 <zedit_parse>}, {state = 22, func = 0x4efee0 <sedit_parse>}, {state = 21, func = 0x4aadb0 <medit_parse>}, {state = 19, func = 0x4ed740 <redit_parse>}, {state = 24, func = 0x44a430 <cedit_parse>}, {state = 26, func = 0x46e7c0 <trigedit_parse>}, {state = 25, func = 0x442540 <aedit_parse>}, {state = 27, func = 0x492d40 <hedit_parse>}, {state = 28, func = 0x4e7fa0 <qedit_parse>}, {state = 29, func = 0x4dfef0 <prefedit_parse>}, {state = 30, func = 0x49f1f0 <ibtedit_parse>}, {state = 31, func = 0x4af6d0 <msgedit_parse>}, {state = -1, func = 0x0}} (gdb) up #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 891 nanny(d, comm); (gdb) bt #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 (gdb) list 886 if (d->showstr_count) /* Reading something w/ pager */ 887 show_string(d, comm); 888 else if (d->str) /* Writing boards, mail, etc. */ 889 string_add(d, comm); 890 else if (STATE(d) != CON_PLAYING) /* In menus, etc. */ 891 nanny(d, comm); 892 else { /* else: we're playing normally. */ 893 if (aliased) /* To prevent recursive aliases. */ 894 d->has_prompt = TRUE; /* To get newline before next cmd output. */ 895 else if (perform_alias(d, comm, sizeof(comm))) /* Run it through aliasing system */ (gdb) info local input_set = {__fds_bits = {512, 0 <repeats 15 times>}} output_set = {__fds_bits = {896, 0 <repeats 15 times>}} exc_set = {__fds_bits = {0 <repeats 16 times>}} null_set = {__fds_bits = {0 <repeats 16 times>}} last_time = {tv_sec = 1517364518, tv_usec = 956875} opt_time = {tv_sec = 0, tv_usec = 100000} process_time = {tv_sec = 0, tv_usec = 184} temp_time = {tv_sec = 0, tv_usec = 99816} before_sleep = {tv_sec = 1517364518, tv_usec = 857059} now = {tv_sec = 1517364518, tv_usec = 957082} timeout = {tv_sec = 0, tv_usec = 0} comm = "ATBM,ki87uj\000ly... but I have a big family background, there's always room for one more in my kitchen.\000k with.\000sh the game.\000p tiny teeth, and the claws on the paws that look like they're as tactile as "... d = 0x2c5f9c0 next_d = 0x23a4fc0 missed_pulses = 0 maxdesc = <optimized out> aliased = 0 (gdb) up #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 534 game_loop(mother_desc); (gdb) bt #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 (gdb) list 529 if (fCopyOver) /* reload players */ 530 copyover_recover(); 531 532 log("Entering game loop."); 533 534 game_loop(mother_desc); 535 536 Crash_save_all(); 537 538 log("Closing all sockets."); (gdb) info local No locals. (gdb) up #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 354 init_game(port); (gdb) bt #0 __strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209 #1 0x00000000004a35a9 in nanny (d=d@entry=0x2c5f9c0, arg=arg@entry=0x7fffc19a6650 "ATBM,ki87uj") at interpreter.c:1488 #2 0x000000000045a405 in game_loop (local_mother_desc=6) at comm.c:891 #3 0x0000000000402e6e in init_game (local_port=<optimized out>) at comm.c:534 #4 main (argc=<optimized out>, argv=<optimized out>) at comm.c:354 (gdb) list 349 350 if (scheck) 351 boot_world(); 352 else { 353 log("Running game on port %d.", port); 354 init_game(port); 355 } 356 357 log("Clearing game world."); 358 destroy_db(); (gdb) info local pos = <optimized out> dir = 0x18810d0 "lib" (gdb) up Initial frame selected; you cannot go up. (gdb)

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

Time to create page: 0.388 seconds